マインクラフトではコマンドを使用することでブロックに近づいたらダメージを受ける仕組みを作ることができます。
以下の動画のようにダメージを与えることができます。
壁には仕掛けは見当たらず、ただ廊下にドアがあるだけです。
しかし、ドアの近くに行くと一定間隔でダメージを受けています。
今回はこのような仕掛けをこの記事で紹介しようと思います。
作り方
建物を作る
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.28.01.21.jpg?resize=1024%2C576&ssl=1)
仕掛けを作る前にはまず建物が必要です。どんな形でもいいですが、鉄のドアなど簡単には壊せないようなものを使用することをおすすめします。
地中に回路を作る
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.28.37.16.jpg?resize=1024%2C576&ssl=1)
先ほどの建物の地下に高さ2マスのスペースを作ります。
そして、下の画像のように回路を組んでいきます。
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.31.21.79.jpg?resize=1024%2C576&ssl=1)
上の画像で、手前側にあるコマンドブロックをコマンドブロックA、奥にあるコマンドブロックをコマンドブロックBと呼びます。
手前のコマンドブロックAにつながっているのは、レッドストーンリピーターではなく、レッドストーンコンパレーターです。
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.31.30.04.jpg?resize=1024%2C576&ssl=1)
奥の回路はブロックからリピーターをつなぎ、二つに分岐されています。
一つはコマンドブロックBにつながっていて、二つ目はレッドストーントーチがかかったブロックにつながっています。レッドストーントーチは粘着ピストンと隣り合っていて、ピストンが押しているブロックが分岐前のレッドストーンリピーター前につながっています。
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.31.56.12.jpg?resize=1024%2C576&ssl=1)
コマンドを書く
コマンドブロックA
レッドストーンコンパレータに繋がれた方のコマンドブロックを編集します。
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.35.43.17.png?resize=1024%2C860&ssl=1)
ブロックの種類:反復
条件:無条件
レッドストーン:常にアクティブ
コマンド
/testfor @a[r=5]
コマンド文中の、r=5は範囲のことを指しています。今回は、「半径5m以内に入ったかどうか」を検知するためにr=5といています。
もう少し広い範囲を対象にしたい場合はここの数を増やすことで範囲を大きくすることができます。
コマンドブロックB
リピーターに繋がれたコマンドブロックにコマンドを記入していきます。
![](https://i0.wp.com/yukiit.com/wp-content/uploads/2021/08/Minecraft-Screenshot-2021.08.31-18.35.33.86.png?resize=1024%2C859&ssl=1)
このコマンドブロックはコマンドを書くだけで大丈夫です。左側のブロックの種類などは変更しません。
コマンド
/effect @p instant_damage 1
以上で仕掛けの完成です。
地下に入る為に開けていた穴を閉じて、サバイバルモードに変更します。
コマンド
/gamemode s
チャットがうるさい?
コマンドブロックでコマンドを実行するとチャット欄に結果が送信されます。
しかも今回は反復コマンドブロックを使用しているので大量に送られてきます。
これを非表示にするにはゲームルールを変える必要があります。
コマンド
/gamerule commandblockoutput false
これでうるさいチャットも黙ってくれます。
コメント