鍵付きドアの仕掛け

コマンド

脱出マップではエリア分けされていて、各エリアの間に鉄の扉が置かれていてそれを開かないと次のエリアに入れない仕掛けがよく設置されています。

そんな扉の仕掛けをいくつか。

設置可能ブロックが設定されたレバーを鍵にする

鍵付きの扉の仕組みとして、設置可能ブロックが設定されたレバーを鍵とする方法がよく使われています。

アドベンチャーモードでは、ブロックやアイテムの破壊や設置が禁止されています。
クラフトでレバーを作れても、ドアの隣にレバーを設置できないのでレバーを開くことができません。

しかしコマンドで、特定のブロックに設置できるアイテムを入手することができます。

give @s lever 1 0 {"can_place_on":{"blocks":["gold_block"]}}

このコマンドを使うと、金ブロックに設置できるレバーがプレイヤーのインベントリに追加されます。

入手したレバーにカーソルを当てると「設置可能:金ブロック」と表示されていて、金ブロックに設置できることがわかります。
このレバーを鍵としてどこかに隠しておくことで、鍵付きの扉を実現することができます。

特定のアイテムを鍵として、入れると開く扉

また鍵付き扉の仕組みとしてよく使われているのが、扉の近くに置かれた鍵穴に見立てたドロッパーなどに、特定のアイテム鍵として入れると扉が開く方法です。

こちらの動画を参考にさせていただきました。

コマンドブロックを置き、その上にドロッパーなどアイテムスロットのあるアイテムを2つ載せます。
方向は両方とも同じ向きにしておきます。

コマンドブロックには

testforblocks ~~1~ ~~1~ ~~2~

のコマンドを入力して、
ブロックの種類:リピート
条件:無条件
レッドストーン:常時実行

にします。

testforblocks コマンドは、始点から終点までの状態が、チェック対象と同じか比較するものです。
このコマンドの場合、コマンドブロックのひとつ上のブロックからひとつ上のブロック(同じ座標なのでひとつ上のブロック一つ)を、コマンドブロックの2つ上のブロックと比較します。

コマンドブロックをコンパレーターで測定すると、比較した領域が同じ時にレッドストーン信号が出力されます。
下のドロッパーに鍵となるアイテムを入れると、レッドストーン信号の出力が停止します。
上のドロッパーの同じスロットに同じアイテムを入れることで、レッドストーン信号が出力されます。

レッドストーン信号を鉄の扉まで伸ばすことで、鍵穴に見立てた上のドロッパーの特定のスロットに鍵とするアイテムを置くことで、扉が開くようになります。

コマンドを簡単にするには、コマンドブロックとドロッパーを縦に積み重ねたほうがいいですが、コマンドでドロッパーの座標を指定してやればどこにおいても問題ありません。
扉に合わせて鍵穴の場所を調整することができますが、レッドストーン信号の影響がある場所だとアイテムが吐き出されてしまうので、気をつけましょう。

鍵としては、「〇〇の鍵」といった名前をつけたトリップワイヤーフックを使ったり、クイズの答えを鉄床で名付けた紙などを使ったりしています。
比較するアイテムが同じでないといけないので、複数のスロットにアイテムを入れて鍵穴に同じようにアイテムを入れさせるという方法もありそうです。


鍵付き扉の仕組みは脱出マップでよく使われていますので、こんな方法で作られているということがわかりました。
どこかで活用してみようと思います。

コメント

タイトルとURLをコピーしました