/execute複数使用のコツ・考え方、教えます。【第2回応用コマンド講座】

今回は/executeコマンドを理解していることを前提としている内容です。「/executeコマンドはまだわからないよ」「自信がないよ」という方は、他サイト様や、当ブログの基礎コマンド講座を担当しているTosyunさんの/executeコマンドに関する記事(現在公開はされておりません。記事の公開をお待ちください。)をお読みください。

どうも、執筆担当のとれんさーです。今回は、/executeコマンドを複数回使って仕組みを作るときのコツや考え方を紹介していこうと思います!よろしくお願いします。
というわけで、第2回応用コマンド講座やっていきましょう!

第1回の記事はこちら!

使い道

まず最初に/executeコマンドを複数使用するシチュエーション(使い道)から説明していきます。
主に使うのは、コマンドをマルチ対応させる際に複雑な動作をさせたい場合です。
/executeコマンドを2回使う場合は、あるエンティティの近くにいる他のエンティティを中心にしてコマンドを実行するといったことができるようになります。

…と、こうして文章にするとと分かりにくいですよね?というわけで、第1回と同じように実際に作りながら説明していきます。

作り方

今回は釣竿を使ったプレイヤーの5ブロック先にスケルトンを出す、マルチ対応コマンドを作っていこうと思います。(需要はない)

釣竿を使ったプレイヤーというのはfishing_hookから1番近いプレイヤーということなので、

/execute @e[type=fishing_hook] ~~~ testfor @p

fishing_hookから1番近いプレイヤーを検知

となりますよね?
それと同時にプレイヤーの向いている5ブロック先にスケルトンを出すのは、

/execute @a ~~~ summon skeleton ^^^5

全てのプレイヤーの5ブロック先にスケルトンを出す

となります。
そして②の「@a」を①の「@p」とリンクさせればいいので、2つのコマンドを1つにまとめる

/execute @e[type=fishing_hook] ~~~ execute @p ~~~ summon skeleton ^^^5

fishing_hookから1番近いプレイヤーの向いている方向5ブロック先にスケルトンを出す

となります。このコマンドを入力したコマンドブロックに続きチェーンコマンドブロックで、

/kill @e[type=fishing_hook]

をつなげてあげると完成です。

まとめ

ここまで紹介してきたように、/executeコマンドを複数回使用することで、◯◯を中心として、◯◯に/summon(/tp/clone/fillなどのコマンドも)を実行させることが、少ないコマンド数でできるようになるのです!
他にも、/executeコマンドの複数使用の中でdetectの複数検知をするという使い道もあります。そちらもうまく使えるととっても便利になりますよ!

detect複数使用の解説はこちら!

ということで、質問やリクエストがあればぜひコメントへお願いします!
それではまた第3回でお会いしましょう。


前回(応用コマンド講座Extra#1)⬇︎

次回(第3回応用コマンド講座)⬇︎