Commands/testforblock

Tests whether a certain block is in a specific location.


 * Syntax


 * Java Edition


 * Bedrock Edition


 * Arguments


 * x y z (BE: position: x y z)
 * Specifies the position of the block to test. x and z must be between -30,000,000 and 30,000,000 (inclusive, without the commas) and y must be between 0 and 255 (inclusive). May use tilde notation to specify a position relative to the command's execution.


 * block (BE: tileName: Block)
 * Specifies the block to test for. Must be a valid block id (for example, ).


 * dataValue (BE: dataValue: int) (optional)
 * Specifies the block data to test for. dataValue must be between -1 and 15 (inclusive). If not specified, or if, dataValue matches any block data value.


 * state (optional)
 * Specifies the block state to test for. Must be a valid block state for the block specified in block. If not specified, or if , state matches any block state.


 * dataTag (optional)
 * Specifies the block data tags to test for. Must be a compound NBT tag (for example, ). If not specified, dataTag matches any block data tag.


 * Result


 * Fails if the arguments are not specified correctly, if the block at the specified position does not match the specified block id or data, or if the specified data tag has different values than are defined in the block's data tag (dataTag does not need to match the block's entire data tag, and data tags in the argument which are undefined in the block will not cause the command to fail).


 * On success, returns a success count of 1.


 * Examples


 * To test if the block at (0,64,0) is any type of wool:


 * To test if the block at (0,64,0) is orange wool:


 * To test if the block below is a jukebox with the "mall" record inside: