Příkaz na testování jednoho bloku jsme si už ukazovali. Nyní si ukážeme podobný příkaz a to příkaz /execute if blocks.

Příkaz execute if blocks

Tento příkaz funguje tak, že porovnává, zda jsou dvě oblasti stejné. Velikost oblasti je stejně jako u ostatních příkazů omezena na 32768 bloků.

/execute if blocks <začátek> <konec> <cíl> <mód>

Zadávání funguje podobně jako u příkazu clone jen tady oblasti nekopírujeme, ale porovnáváme.

  • <začátek> a <konec> jsou rohy určující počáteční oblast
  • <cíl> je blok určující roh cílové oblasti.
    • Tento blok musí mít opět nejmenší souřadnice ve všech osách oblasti
  • <mód> - hodnota all nebo masked
    • určuje, zda se bude porovnávat celá počáteční oblast (all) nebo jen pevné bloky (masked) - ne vzduch
allmasked

Příklad

Postavte si dvě oblasti jako na obrázku a napište příkaz, který tyto oblasti bude porovnávat. Následně příkaz dejte do příkazového bloku a pomocí porovnávače zapněte lampu, když budou obě oblasti stejné.

Řešení

Příkaz bude vypadat následovně:

/execute if blocks -31 51 -181 -29 53 -179 -24 51 -181 all

Příkazový blok nastavíte na opakovací, nepodmíněný a vždy aktivní a porovnávačem z něj získáte signál, když bude výsledek porovnání pravdivý.

Poznámka

Souřadnice budete mít hodně pravděpodobně jiné, než já - podle toho, kde ve vašem světě příklad postavíte.