An ICTBlockState object represents a block's current state.

Importing the package

Link to importing-the-package

It might be required for you to import the package if you encounter any issues, so better be safe than sorry and add the import.
import mods.contenttweaker.BlockState;

Calling an ICTBlockState

Link to calling-an-ictblockstate

You can get an ICTBlockState either as a parameter in an IBlockAction function or from the Block Bracket Handler

<block:minecraft:dirt>

ZenMethods and ZenGetters

Link to zenmethods-and-zengetters

ZenMethodZenGetterReturn TypeDescription
ZenMethod
getBlock()
ZenGetter
block
Return Type
IBlock
Description
Returns the refered block
ZenMethod
getMeta()
ZenGetter
meta
Return Type
int
Description
Returns the refered block's metadata
ZenMethod
canProvidePower()
ZenGetter
Return Type
boolean
Description
Returns if the refered block can provide Redstone Power
ZenMethod
getMobilityFlag()
ZenGetter
Return Type
PushReaction
Description
Returns the push reaction flag

boolean isReplaceable(IWorld world, IBlockPos pos);
Parameters:

  • IWorld world → The world to be checked in
  • IBlockPos pos → The Block's position

Returns a boolean that sais whether the block can be replaced or not.

int getLightValue(IWorld world, IBlockPos blockPos);
Parameters:

  • IWorld world → The world to be checked in
  • IBlockPos pos → The Block's position

Returns an int representing the current light value at the given location.

int getWeakPower(IWorld world, IBlockPos blockPos, Facing facing);
Parameters:

  • IWorld world → The world to be checked in
  • IBlockPos pos → The Block's position
  • Facing facing → The side to be checked

Returns an int representing the current redstone power on this side.

getComparatorInputOverride

Link to getcomparatorinputoverride

int getComparatorInputOverride(IWorld world, IBlockPos blockPos);

Parameters:

  • IWorld world → The world to be checked in
  • IBlockPos pos → The Block's position

Returns an int representing the block's redstone comparator input override type.

Comparing two ICTBlockState objects

Link to comparing-two-ictblockstate-objects

You can either use int compare(ICTBlockState other); or the ZenCompare Tokens == !=.
The return different types though:

  • state.compare(other) returns an int that is 0 if they are equal
  • state == other returns a bool that is true of they are equal