公開: 2015/05/12最終更新: 2021/05/01

ボタンを押すとランプが光り、他を選ぶと切り替わるスイッチ回路の作り方[コマンド解説 for1.8]

0 Tweets
Like 0
Dis 0
スポンサーリンク

一つだけボタン
配布ワールドやマルチプレイのサーバーで、「一つだけ選べるボタン」を見かけませんか?
RPG風マップで自分の職業を変更したりPvPのフィールドを切り替えたり
「ボタンを押した所のランプが光って他のランプが消え、何回でも選び直せる

そんなよく見るレッドストーン回路の作り方と仕組み、コマンドを解説します。

 

今回作る仕掛け(回路)はどんな物?

よくある選択肢ボタン。

アドベンチャーマップの入り口や、PvPのサーバーにありそうな選択肢ボタン。
ボタンの上にレッドストーンランプがあり、押せば光るのですが…

ボタンを押すとランプが点灯、他のボタンを押すと切り替わる

▲このように、ボタンを押した後に他のボタンを押すと、ランプが切り替わります。
一つボタンを押すとそのランプが点き、他のランプが消える回路を作るのです。

一つだけ点灯する

この回路で使っているコマンドは2種類だけです。
レッドストーンブロックを撤去し、設置する。それだけです。

一つだけ選べて、何回でも選び直せるボタン回路の作り方

それでは、回路の作り方とコマンドを解説していきます。
回路の完成品はこちら。
一つ目の作り方の完成品

どうです? とっても単純でしょ。それぞれのボタンから2つのコマンドブロックへ回路を繋げるだけです。

まずは回路を作ろう

まずは回路を作りましょう。ボタンをいくつか用意して、そこからパウダーを伸ばします。
そして2つのコマンドブロックを設置一つにはパウダーを乗せてもう一つはリピーターで繋ぎます

Xのコマンドブロック周辺の仕組み

次に、ボタンの上にレッドストーンランプを設置します。
そして図のように紫色のガラスを、左端のランプから右端のランプまでの範囲に設置して下さい。
この紫のガラスの範囲が、ボタンを押した際にレッドストーンブロックを撤去/設置する範囲になります。

「X」のコマンドブロックには、以下のコマンドを入力します。

「X」のコマンドブロックに入力するコマンド (ボタンを押したら実行)
/fill 始点の座標 終点の座標 stained_glass 10 replace redstone_block 0

fillコマンドで、最初に周辺のレッドストーンブロックを一斉除去します。
上図の「始点」から「終点」までの範囲にあるレッドストーンブロックを、紫のガラスに置き換えます。
この「replace」機能は、こちらの記事で解説したように、置き換えるブロックを後に追記します。

「Y」のコマンドブロック周辺の回路

次に、リピーターの先の「Y」のコマンドブロックに入力するコマンドを解説します。

「Y」のコマンドブロックに入力するコマンド (Xよりちょっと遅れて実行)
/setblock 赤石ブロックを設置する相対座標 redstone_block 0

setblockコマンドを使って、紫のガラスがある範囲に赤石ブロックを設置します。

相対座標の求め方

「赤石ブロックを設置する相対座標」はどう書けばいいか、表でまとめました。

「Y」から見て、紫のガラスがどこにあるか コマンド内の相対座標
ガラスが北にある場合 ~ ~1 ~-3
ガラスが南にある場合 ~ ~1 ~3
ガラスが東にある場合 ~3 ~1 ~
ガラスが西にある場合 ~-3 ~1 ~

ボタンを増やす際は範囲も増やしてね

これらの「X」と「Y」のコマンドブロックを、ボタンの数だけ用意すれば完成です。
ボタンの数を増やす時はfillコマンドの範囲も増やさないといけない、という点に注意して下さい。

実行したいコマンド

最後に、ボタンを押した時に実行したいコマンドを設定します。
例えばscoreboardの数値を設定したり天候を決めたり… 色々なことができます。

 


 


コメントを見る

MDバージョンを閲覧
スポンサーリンク

おすすめ記事

【速報】Hytale、動物がうんこ可能 – 2020年1月の開発進捗が公開
公開: 2020/01/30最終更新: 2021/05/03
ベセスダランチャーで日本語で遊びつつSteamオーバーレイを使う方法
公開: 2019/08/31最終更新: 2021/05/01
スポンサーリンク
MDバージョンについて
お問い合わせ
利用規約
プライバシーポリシー
Released under MIT License.
(License text is on GitHub)
速度向上のため、記事の内容は60分間変わりません
Last commit: fixed signin not showed