特定の名前のアイテムをドロップした時に発動するコマンドは?マインクラフト

結論:
スコアボードとexecuteコマンドを使う。
箇条書きメモ
- 特定のアイテムをドロップした時に発動するコマンド
- scoreboardコマンドのdropped項目を使用
- 例としてダイヤモンドを捨てた時の設定
- コマンドの記述例:/scoreboard objectives add スコアボードの名前 minecraft.dropped:minecraft.diamond
- コマンドブロックを設置して別のアクションを実行
- executeコマンドを使用
- コマンドの記述例:execute if entity @p[scores={作成したスコアボードの名前=1..}] run 実行したいコマンド
- リピートコマンドブロックを使用
- チェーンコマンドブロックを繋げてスコアをリセット
- スコアリセットのコマンド例:/scoreboard players reset @a XXXX
- 実行したいコマンドを自由に設定可能
- 警告メッセージを表示することも可能
特定の名前のアイテムをドロップした時に発動するコマンドは?
マインクラフト(Java版)では、特定の名前が付いたアイテムをドロップした際に、特定のコマンドを発動させることができます。
この機能を利用することで、ゲームプレイに新たな要素を加えることができ、より楽しむことができるでしょう。
ここでは、特定のアイテムを捨てた時にコマンドを実行する方法について詳しく解説します。
スコアボードの設定
まず、特定のアイテムを捨てたことを感知するためには、スコアボードを設定する必要があります。
具体的には、以下のコマンドを使用します。
/scoreboard objectives add スコアボードの名前 minecraft.dropped:minecraft.diamond
このコマンドを実行することで、ダイヤモンドを捨てた際にカウントが進むスコアボードが作成されます。
ここで注意が必要なのは、スコアボードを作成するだけでは、捨てたことを感知できるだけで、他のアクションは何も起こらないという点です。
コマンドブロックの設置
次に、捨てたことを感知した際に別のアクションを実行するために、コマンドブロックを設置します。
ここで使用するのが、executeコマンドです。
以下のように書き込みます。
execute if entity @p[scores={作成したスコアボードの名前=1..}] run 実行したいコマンド
このコマンドは、作成したスコアボードの値が1以上であれば、指定したコマンドを実行するというものです。
例えば、プレイヤーをテレポートさせたい場合は、tpコマンドを繋げることができます。
また、tellrawコマンドを使って「捨てるな!」と警告することも可能です。
コマンドの繰り返しを防ぐ
ただし、このままでは指定したコマンドが延々と繰り返されてしまいます。
そのため、リピートコマンドブロックにチェーンコマンドブロックを繋げる必要があります。
チェーンコマンドブロックは、条件付きで常時実行されるように設定します。
そして、コマンドの部分にはスコアボードの値をリセットするコマンドを記入します。
具体的には、以下のように書きます。
/scoreboard players reset @a XXXX
ここで、XXXXはリセットしたいスコアボードの名前に置き換えます。
実際の例
例えば、リンゴという名前が付いたダイヤモンドをドロップした際に、特定のアクションを実行したい場合、以下の手順を踏むことになります。
まず、スコアボードを作成します。
/scoreboard objectives add apple_dropped minecraft.dropped:minecraft.diamond
次に、コマンドブロックを設置し、executeコマンドを設定します。
execute if entity @p[scores={apple_dropped=1..}] run give @p minecraft:apple
このコマンドは、プレイヤーがリンゴという名前のダイヤモンドを捨てた場合、プレイヤーにリンゴを与えるというものです。
最後に、チェーンコマンドブロックを使ってスコアをリセットします。
/scoreboard players reset @a apple_dropped
まとめ
特定の名前が付いたアイテムをドロップした際にコマンドを発動させる方法は、スコアボードとコマンドブロックを組み合わせることで実現できます。
この機能を活用することで、マインクラフトのプレイスタイルに新たな楽しみを加えることができるでしょう。
ぜひ、試してみてください。
Yes
