/execute は何をしますか?
/execute コマンドは、実行者、実行場所、実行方法を変更し、オプションで条件を追加しながら、別のコマンドを実行します。このビルダーは、サブコマンドを正しい順序で連結するため、構文を二度と間違えることはありません。
/executeチェーンの作り方
- 必要な順序でサブコマンドを追加します。それぞれのサブコマンドは、その後に続くすべての実行コンテキストを変更します。
- 各サブコマンド(エンティティセレクター、座標、条件、スコア比較など)を設定します。
- runコマンドを設定します。これは、チェーンの最後に、変更されたコンテキストで実行される最終コマンドです。
- 組み立てられたチェーンをコピーし、チャットまたはコマンドブロックに貼り付けます。
難しいのは構文です。1つのチェーンは簡単に200文字を超え、キーワードが1つでも間違った場所にあると、コマンド全体が壊れてしまいます。このビルダーは、ドロップダウン、入力フィールド、ライブプレビューによってそのリスクを取り除きます。
/executeサブコマンドの解説
| Subcommand | What it changes |
|---|---|
| as | 実行エンティティ (誰が) |
| at | 位置、向き、ディメンション |
| positioned | 位置のみ |
| rotated | 向きのみ |
| facing | ある点またはエンティティに顔を向ける向き |
| align | 位置をブロックグリッドにスナップする |
| anchored | アンカーポイント (目または足) |
| in | ディメンション |
| on | エンティティの関係を選択する |
| if / unless | 条件付き実行 |
| store | 結果または成功をデータに保存する |
| run | 実行する最終コマンド |
修飾サブコマンド
as は実行者を指定したエンティティに変更し、at は実行位置をそのエンティティに移動させ、positioned と rotated は位置と回転を直接設定し、facing は特定の点またはエンティティを向き、align はブロックグリッドに合わせ、anchored は目または足を選択し、in はディメンションを変更し、on はエンティティとの関係を選択します。
条件サブコマンド
if と unless は条件をテストし、それがパスした場合にのみチェーンを続行します。利用可能なテストには、Java版では entity、block、blocks、data、score、loaded、predicate、biome、function が含まれ、Bedrock版では entity、block、blocks、score が含まれます。
Store (Java版のみ)
store result と store success は、最後のコマンドの出力を score、block entity、entity NBT、command storage、または bossbar に保存します。Bedrock版には store サブコマンドはありません。
順序が重要です
サブコマンドは左から右に実行されます。as または at が複数のエンティティを選択すると、チェーンの残りの部分はエンティティごとに一度分岐します。例えば、execute as @a run say Hi はすべてのプレイヤーに対して一度に実行されます。
よくある例
すべてのプレイヤーとして挨拶する: execute as @a run say Hello
草ブロックの上にいるゾンビに雷を落とす: execute as @e[type=zombie] at @s if block ~ ~-1 ~ minecraft:grass_block run summon lightning_bolt
プレイヤーの体力をスコアとして保存する: execute store result score @s health run data get entity @s Health
よくある質問
execute コマンドが動作しないのはなぜですか?
チェーンは run サブコマンドまたは条件で終わる必要があり、run は一番最後に一度だけ出現できます。また、バージョン間で構文が変更されています。コマンドブロックが unparseable と表示された場合は、ご使用のバージョンのwikiの例とチェーンを比較してください。
Bedrock版で store を使用できますか?
いいえ。store、on、summon、data、biome、predicate、function、loaded は Java版のみです。Bedrock版が選択されている場合、このビルダーはそれらを非表示にします。
すべてのプレイヤーに対してコマンドを実行するにはどうすればよいですか?
execute as @a run <command> を使用します。as サブコマンドはすべてのプレイヤーを選択し、チェーンは選択されたエンティティごとに一度実行されます。
as と at の違いは何ですか?
as は誰が実行するか(実行者)を変更し、at はどこで実行するか(位置)を変更します。エンティティに作用するには as を使用し、その位置で作用するには at を使用するか、両方を組み合わせます: execute as @e at @s run summon lightning_bolt。
オペレーター権限は必要ですか?
Java版では権限レベル2(コマンドブロックまたはop)が必要です。Bedrock版ではワールド設定でチートを有効にする必要があります。
MinecraftにおけるmaxCommandForkCountとは何ですか?
max_command_forks gameruleはデフォルトで65,536であり、1つの/executeコマンドが作成できる実行コンテキストの数を制限します。もしas @eが制限よりも多くのエンティティを選択した場合、コマンドは失敗します。max_command_sequence_lengthもデフォルトで65,536であり、チェーンまたは関数内のコマンドの総数を制限します。