今回は雪玉だけで投下物資を呼び出せるようになるコマンドを紹介します。この方法を真似するだけで雪玉を空に向かって投げると好きな中身のチェストを呼び出すことが出来るようになります!バトルロワイアル系のゲームでよくある投下物資をマイクラで再現したい人はぜひ最後まで見てください!
作り方
用意するもの
※クリエイティブモードで作る前提なので、数量に関しては参考程度に考えてください。
用意するもの | 数 | |
コマンドブロック | 19 | |
ストラクチャーブロック | 1 | |
レッドストーンダスト | 6 | |
レッドストーンコンパレーター | 2 | |
レッドストーンリピーター | 1 |
方法
ステップ1
まずコマンドブロックやレッドストーンリピーターなどををこのように並べてください。
コマンドの入力はこの後説明しますので、中には何も書かなくて大丈夫です。
コマンドの設定と中身は以下の画像とそれに対応する番号通りにしてください。
①:設定 リピート 無条件 常時実行
コマンド
/execute as @e[type=chest_minecart] at @s run particle minecraft:water_evaporation_bucket_emitter ~ ~5 ~
②:設定 リピート 無条件 常時実行
コマンド
/execute as @e[name=<防具立ての名前>] at @s run tp ~ ~ ~
好きな防具立ての名前のところにはコマンドの実行過程で使用する防具立ての名前を入れます。好きな名前をいれていいです。
ただし、これから先にも出てくるので統一してください。私はarmor_stand_aという名前にしました。
防具立ての名前は出来るだけワールド内の他のエンティティに付けられた名前と被らないようにしましょう。もしどうしてもワールド内の他のエンティティに付けられた名前と同じにしたい場合は[]内に
,type=armor_stand
を以後、この防具立てを使うコマンドにも含め追加してください。
③:設定 リピート 無条件 常時実行
コマンド
/testfor @e[type=snowball]
④:設定 インパルス 無条件 動力が必要
コマンド
/execute as @e[type=snowball] at @s run summon chest_minecart ~ ~30 ~
⑤:設定 鎖 無条件 常時実行
コマンド
/kill @e[type=snowball]
⑥:設定 鎖 無条件 常時実行
コマンド
/say 投下物資が来るぞ
ここにはチェスト付きトロッコが落ちてくるときのセリフが入ります。
ポイントしたときの注意のところに好きな名前を入れるとセリフの発言主の名前を変えることが出来ます。コマンドブロックが言うのでデフォルトでは[!]ですが、例えば私は今回、「プレイヤー」と入れました。
⑦:設定 鎖 無条件 常時実行
コマンド
/say 気を付けろ!
こちらも同様にセリフを入れます。先ほどのセリフと発言主の名前を統一してください。
⑧:設定 鎖 無条件 常時実行 ティックの遅延:60
コマンド
/say 来たぞ!
先ほどと同様に発言主の名前を統一してください。また今回はティックの遅延があるので注意してください。
⑨:設定 鎖 無条件 常時実行
コマンド
/execute as @e[type=chest_minecart] at @s run structure load <ストラクチャーの名前> ~ ~ ~ 0_degrees
こちらは落下したチェスト付きトロッコの座標にストラクチャー(後ほど解説)を読み込むものです。
私はチェストだけのストラクチャーを読み込むのでわかりやすく名前はchestにしました。
⑩:設定 鎖 無条件 常時実行
コマンド
/kill @e[type=chest_minecart]
⑪:設定 鎖 無条件 常時実行
コマンド
/kill @e[type=item]
⑫:設定 インパルス 無条件 動力が必要 ティックの遅延:5
コマンド
/execute as @e[type=chest_minecart] at @s run summon armor_stand <防具立ての名前> ~ ~40 ~
好きな防具立ての名前をいれてください。
⑬:設定 鎖 無条件 常時実行 ティックの遅延:260
コマンド
execute as @e[name=<防具立ての名前>] at @s run fill ~ ~-130 ~ ~ ~ ~ air replace chest
こちらは召喚したチェストを時間差で消すものです。
ティックの遅延を260にした場合、チェストが表れてから10秒後にチェストが消えます。
消える秒数でティックの遅延を求める式は
60+20・秒数=ティックの遅延
です。(・は×と同じで掛けるという意味)
⑭:設定 鎖 無条件 常時実行 ティックの遅延:2
コマンド
kill @e[name=<防具立ての名前>]
ステップ2
次に以下の画像のコマンドブロックを入力していきます。
もうすぐで終わるのでもうひと踏ん張りです。
置き方は以下の通りです。
ステップ1と同様、コマンドの設定と中身は以下の画像とそれに対応する番号通りにしてください。
⑮:設定 リピート 無条件 常時実行
コマンド
/testfor @e[type=chest_minecart]
⑯:設定 インパルス 無条件 動力が必要 ティックの遅延:40
コマンド
/execute as @e[type=chest_minecart] at @s run playsound random.explode @a ~ ~ ~
⑰:設定 鎖 無条件 常時実行
コマンド
/execute as @e[type=chest_minecart] at @s run particle minecraft:huge_explosion_emitter ~ ~ ~
⑱:設定 リピート 無条件 常時実行
コマンド
/effect @e[name=<防具立ての名前>] invisibility 999 1
ステップ3
最後にストラクチャーを作ります。ストラクチャーとは簡単に言えば、構造物を名前を付け保存できる機能です。もちろん保存したストラクチャーを設置することもでき、今回はそれを利用します。
作り方は簡単です。
まず以下のコマンドを入力してストラクチャーブロックを手に入れてください。
/give @s structure_block
そして広い所にストラクチャーブロックを置きます。置くときは適当なブロックの上に置き、地面から1マス高いところに置きましょう。
設置するとこのようになると思います。
そして1マス上に置くために置いたブロック(この画像でいうと丸石ブロック)を壊します。
そしてストラクチャーブロックをブロックを設置するボタンを押し、開きます。
すると下の様な画面が出てくると思うので、画像のように設定してください。
サイズ:X 1 Y 1 Z 1
オフセット:X 1 Y -1 Z 0
エンティティを含める:オフ
あとはいじらないでください。
そして設定が終わったら一度ストラクチャーブロックを閉じます。
そして、枠線の中にチェストを置きます。
チェストをこのように置き終わったら、中に支援物資として落としたいアイテムを入れます。
私は今回下の画像のように入れました。
そして入れ終わったら再びストラクチャーブロックをブロックを設置するボタンで開き、ストラクチャー名のところに好きなストラクチャーの名前を入れます。
名前を入力したら、保存を押します。
これで雪玉で出来る支援物資の完成です。
実際に動かしてみる
雪玉を空に向かって投げると…
このようにチェスト付きトロッコが召喚され…
そしてチェスト付きトロッコが落ち終わり…(爆発は演出なのでダメージは受けません。)
このようにチェストが現れます。
そして中身を確認すると、
きちんと中身が入っています。
注意点
⑬はチェスト(厳密には雪玉の座標に召喚されたチェスト付きトロッコ)の上に召喚された防具立てから下のX、Z座標が同じ場所にあるチェストを空気に置き換えるコマンドです。
そのため、ワールドに既にあるチェストに影響を及ぼす可能性があります。
もしそれを避けたい場合、②、⑫、⑬、⑭、⑱のコマンドブロックを破壊してください。
ただしその場合、時間差でチェストが消えなくなり、手作業で壊す必要が生じます。
もし、チェストを消す処理をどうしても残したい場合、樽のようなチェストの代わりになるものを使ってストラクチャーを用意することで対策は出来ます。
終わりに
長くなりましたが、以上が雪玉で投下物資が呼び出せるようにする方法です。
少し手間ですが、一度出来ると結構PvPを面白くする要素になります。
ぜひミニゲームを作る際、PvPの要素として使ってみてください!
それでは!