メインコンテンツまでスキップ
probot-auto-merge[bot]が最終更新

testforblocks

項目内容
コマンドtestfoblocks
目的2つの領域のブロックが合致しているか判定する
必要な権限レベル1
コマブロで実行可能
適用対象ブロック
warning

これは複数のブロックを対象とする場合のコマンドです。testforblockと間違えないよう注意してください。

構文#

指定した領域のブロックがもう1つの領域と合致しているか判定する
/testforblocks <始点x y z> <終点x y z> <判定先x y z> [モード]

引数#

<始点x y z> と <終点x y z> (必須)

判定する元の領域の向かい合う角の座標を指定する。相対座標を使って、コマンドの実行場所から相対的に領域を指定することもできる。(相対座標の書き方はこちらを参照) 体積が524288を超える領域を指定するとエラーになる。

<判定先x y z> (必須)

判定先の、一番高度が低い北西の端(要するに一番各軸の値が小さい座標)を指定する。相対座標を使って、コマンドの実行場所から相対的に領域を指定することもできる。判定元と判定先の領域は重なっても構わない。

[モード] (任意)

判定する際のモードを指定する。次のうちどれか1つを選ぶ:

  • all ― 領域内の全てのブロックが判定される
  • masked ― 判定元の領域内の空気ブロックは、判定先の領域ではどのブロックでもかまわない。(要するに、空気以外のブロックが合致していればいい)

指定しない場合はallになる。

実行結果#

次の場合は失敗する:

  • 引数が正しく指定されていない場合
  • 複製元の領域の体積が524288ブロックより大きい場合
  • 複製元の領域と複製先の領域内のブロックが合致していない場合
  • 領域のどちらかまたは両方が描画されていない場合

成功すると、チャット欄に合致したブロックの数が表示される。(ここで表示されるのは、allモードの場合は領域内の全ブロックの数、maskedモードの場合は空気ではないブロックの数)

また、レッドストーンコンパレーターを接続している場合は強度1の信号を出す。 このことを利用して、「あの場所に同じ順番でブロックを置くと何か起こる」といった仕掛けが作れる。

使用例#

  • /clone 0 0 0 5 5 5 10 10 10 : 0,0,0から5,5,5までの範囲のブロックが、10,10,10から15,15,15の範囲のブロックに合致しているか判定する