Minecraft【武器・防具・道具】ダイナミックライト。by コマンド
Java版1.21.4-、統合版v1.21.51-で動作確認。
松明をオフハンドに持って、移動しながら闇を照らす。
ダイナミックライト。by コマンド
モッドやアドオンでおなじみの、ダイナミックライトをコマンドで再現。真夜中の散歩や洞窟探索で、暗闇を照らす事が出来ます。光源ブロックの方がリアリティがありますが、明るさの調節やオフハンドに持つアイテムも、自由に変更可能です。統合版は仕様により、オフハンドで松明を設置出来ませんが、スニーク検知を使えば代用出来ると思います。
◻︎装置の特徴
・オフハンドの検知。
・プレイヤーの周りを照らす。
【統合版】
・オフハンドに松明が持てる。
※「as」や「minecraft:」などのコマンドは簡略化しています。一部のコマンド、マルチプレイやサーバーでは必要な場合があります。
コマンドブロックの使い方。
装置はシングルプレイ用です。マルチプレイで遊ぶには、ターゲットセレクタにタグや引数を追加してください。詳しいコマンドブロックの使い方は、関連記事を確認ください。
- 詳しくはこちら→ 【テクニック】コマンドブロックの使い方。1-2
【Java版】 ダイナミックライト
Java版では、オフハンドに持った松明を設置する事が出来ます。また、プレイヤーが装置から離れていても動作します。
②③は動力が必要。②にレッドストーントーチを設置。矢印はホッパーの方向。
装置のしくみ。
装置はホッパー式のクロック回路を使い、ライトブロックの設置と消去を繰り返しています。簡略回路なので、ライトブロックの設置が多めになっています。負荷が気になる場合は、タイマーやスケジュール(ファンクション)を使ったクロック回路で調整してください。
【Java版】
①execute if entity @p[nbt={Inventory:[{id:"minecraft:torch",Slot:-106b}]}] ②execute at @p run setblock ~ ~ ~ light[level=15] ③execute at @p run fill ~-15 ~-3 ~-15 ~15 ~7 ~15 air replace light[level=15] |
①オフハンドに松明を持った時、信号を出す。
②プレイヤーの位置に、明るさ15のライトブロックを設置。
③プレイヤーの周辺のライトブロックを消去。
【統合版】 ダイナミックライト
統合版では、オフハンドに持った松明を設置する事が出来ません。また、初期設定ではプレイヤーが装置から離れると、コマンドブロックも停止します。常時使用するには「tickingarea」を設定するか、ビヘイビアーパックが必要です。
②⑤は条件付き。④は動力が必要。ティックの遅延:2。⑤はティックの遅延:12。
装置のしくみ。
松明を捨てるとオフハンドに松明を持ち、装置が起動。ティックの遅延を使ったクロック回路で、ライトブロックの設置と消去を繰り返しています。動作が不安定な場合は、④⑤のティックの遅延を調整してください。
【統合版】
①execute at @e[name=松明] run replaceitem entity @p[r=3] slot.weapon.offhand 0 keep torch 1 ②kill @e[name=松明] ------ ③execute if entity @a[hasitem={item=torch,location=slot.weapon.offhand,quantity=1}] ④execute at @p run setblock ~~~ light_block_10 ⑤execute at @p run fill ~-5~~-5 ~5~7~5 air [] replace light_block_10 |
①プレイヤー周辺に松明が落ちている時、オフハンドに松明を一個設置。
②落ちている松明を削除。
------
③オフハンドに松明を一個持っている時、信号を出す。
④プレイヤーの位置に、明るさ10のライトブロックを設置。
⑤プレイヤーの周辺のライトブロックを消去。