Minecraft【動く装置】タイマーディスプレイ。No.3

2024-03-21

Java版1.20.4、統合版はv1.20.71で動作確認。

スコアボードタイマーを応用して、数字を表示するディスプレイを作成。

タイマーディスプレイ。v1.20

スコアボードタイマーを応用して、小型のレッドストーンディスプレイに時間を表示します。ホッパー式の記憶装置から、コマンドを使った装置に変更。コマンドの難易度は高くなりますが、装置の切り替えは簡単で、使い勝手が向上しました。最大100秒まで計ることが出来ます。ストップウォッチは中級者、タイマーは上級者向け。

※内容を大幅に変更しました。うまく表示されない場合は、ブラウザのキャッシュをクリアしてください。

◻︎装置の特徴
・スコアボードタイマーの応用。
・1の位、10の位、100の位を別々に検知。
・アイテムを使ったタイマーの切り替え。

 

 

更新履歴
2024-3-15/再設計!全てコマンドに変更し、使いやすくしました。
2023-1-22/新設計!複雑だった回路を見直し、簡単にしました。

 

プレイ動画。v1.20

旧式/ v1.0はこちら。

 

 

 

目次

1.作成準備
・ログの非表示。・スコアボードの作成。
2.コマンドブロックの設置
3.装置全体図
・タイマーディスプレイ装置全体図。
4.デイスプレイ
・ディスプレイの作成。・数字ブロック。
5.出力装置
・1の位。・10の位。
6.ストップウォッチ装置
・起動スイッチ(金)。・ストップウォッチ。
7.タイマー装置
・時間の設定。・起動スイッチ(鉄)。・タイマー。・ループ装置。
8.操作方法
・ストップウオッチの場合。・タイマーの場合。

 

※「as」や「minecraft:」などのコマンドは簡略化しています。一部のコマンド、マルチプレイやサーバーでは必要な場合があります。

 

作成準備

コマンドは1人用で作成しています。マルチプレイで使う場合は、ターゲットセレクタを変更してください。 ※「tag」や、防具立てを指定。

ログの非表示。

◻︎ログの非表示とコマンドブロック入手。

/gamerule commandBlockOutput false
/give @s command_block

 

スコアボードの作成。

◻︎数字を数える「count」を作成します。

/scoreboard objectives add count dummy

◻︎削除する場合。
/scoreboard objectives remove count

 

コマンドブロックの設置

コマンドブロックは画像に合わせて配置。「ブロック種類」「レッドストーン」を変更します。 変更がある場合は、個別に解説していきます。

◎配置したコマンドブロックの状態/すべて無条件。※()内は統合版の名称。

コマンドブロックの色 ブロックの種類 レッドストーン
黄色 インパルス 動力が必要
青色 チェーン(鎖) 常時実行
紫色 リピート 常時実行

 

 

装置全体図

タイマーディスプレイの装置全体図。

フラットワールドを作成したら、座標(0 -60 0)へ移動して開花したツツジの葉を設置。装置は開始点座標(0 -60 0)を基準に、南が正面がになるよう設置にしています。座標を合わせてブロックを設置していくと、コマンドはコピー&ペーストで作れます。

開始点は座標(0 -60 0)。

❶ディスプレイ ❷ストップウォッチ装置 ❸タイマー装置 ❹クロック回路 ❺起動スイッチ

◻︎南向きを確認するには
ストラクチャーブロックを設置して、境界線の青い線が伸びる方が南。※赤い線は東。
/give @s structure_block

 

デイスプレイ

ディスプレイの作成。

1の位と10の位を表示出来る小型ディスプレイを作成します。点灯してるレッドストーンランプの数が数字になります。「0」はデジタル数字を使用。※見えにくい場合、デジタル数字のディスプレイに変更してください(座標の調整が必要)。

「あ」は座標(0 -58 10)。

「あ」の座標から3×7ブロックのレッドストーンランプを設置。中央は黒曜石に変更します。1の位は「A」、10の位は「B」の座標から、縦書きで順でランプを点灯していきます。画像の数字は「25」。

 

ディスプレイ背面の1の位「B、C」の範囲座標、10の位「D、E」の範囲座標を調べます。※レッドストーンをクローンしてランプを点灯させます。カラーコンクリートは目安。

 

数字ブロック。

レッドストーンブロックで、1〜0までの数字を作成。数字をディスプレイ裏にクローンして、レッドストーンランプを点灯させます。※数字ブロックは、ディスプレイ裏に繋げておくと、座標入力が簡単になります。

①〜⓪まで、数字に合わせてレッドストーンブロックを設置し、範囲座標を確認しておきます。※①〜⓪の座標は「B、C」「D、E」の範囲座標からz軸の座標が1増減するだけです。

 

出力装置

スコアボードの数字を検知して、レッドストーンブロックをクローンする装置を作ります。リピートブロックは連結しないように、1の位を10個、10の位を10個好きな場所に設置。※ファンクションを使うと便利です。

 

1の位。

【Java版/統合版 共通】

①execute if score "1の位" count matches 1..1 run clone 4 -58 8 6 -56 8 4 -58 9
②execute if score "1の位" count matches 2..2 run clone 4 -58 7 6 -56 7 4 -58 9
③execute if score "1の位" count matches 3..3 run clone 4 -58 6 6 -56 6 4 -58 9
④execute if score "1の位" count matches 4..4 run clone 4 -58 5 6 -56 5 4 -58 9
⑤execute if score "1の位" count matches 5..5 run clone 4 -58 4 6 -56 4 4 -58 9
------
⑥execute if score "1の位" count matches 6..6 run clone 0 -58 8 2 -56 8 4 -58 9
⑦execute if score "1の位" count matches 7..7 run clone 0 -58 7 2 -56 7 4 -58 9
⑧execute if score "1の位" count matches 8..8 run clone 0 -58 6 2 -56 6 4 -58 9
⑨execute if score "1の位" count matches 9..9 run clone 0 -58 5 2 -56 5 4 -58 9
⓪execute if score "1の位" count matches 0..0 run clone 0 -58 4 2 -56 4 4 -58 9

1の位のスコアに合わせて、各数字のレッドストーンブロックを範囲座標「B、C」にクローンします。 ※Java版は、クォーテーションマーク「"」が無くても動作します。

 

10の位。

【Java版/統合版 共通】

①execute if score "10の位" count matches 1..1 run clone 4 -58 8 6 -56 8 0 -58 9
②execute if score "10の位" count matches 2..2 run clone 4 -58 7 6 -56 7 0 -58 9
③execute if score "10の位" count matches 3..3 run clone 4 -58 6 6 -56 6 0 -58 9
④execute if score "10の位" count matches 4..4 run clone 4 -58 5 6 -56 5 0 -58 9
⑤execute if score "10の位" count matches 5..5 run clone 4 -58 4 6 -56 4 0 -58 9
------
⑥execute if score "10の位" count matches 6..6 run clone 0 -58 8 2 -56 8 0 -58 9
⑦execute if score "10の位" count matches 7..7 run clone 0 -58 7 2 -56 7 0 -58 9
⑧execute if score "10の位" count matches 8..8 run clone 0 -58 6 2 -56 6 0 -58 9
⑨execute if score "10の位" count matches 9..9 run clone 0 -58 5 2 -56 5 0 -58 9
⓪execute if score "10の位" count matches 0..0 run clone 0 -58 4 2 -56 4 0 -58 9

10の位のスコアに合わせて、各数字のレッドストーンブロックを範囲座標「D、E」にクローンします。

 

ストップウォッチ装置

1秒のクロック回路を作り、数字を増やす装置を作ります。100秒になったら、装置を停止。※時間の変更も出来ます。

起動スイッチ(金)。

プレイヤーに金のシャベルを与え、装置を起動します。

画像に合わせてブロックを配置。金ブロックは、座標(10 -60 10)。石のボタンを付けておきます。 ③は動力が必要。レッドストーントーチを設置。※ディスプレイ装置は非表示にしています。

 

【Java版】

①give @p golden_shovel
------
②clear @p golden_shovel 0
③scoreboard players add "ティック" count 1
④scoreboard objectives add count dummy
⑤fill 0 -58 9 2 -56 9 air
------
⑥scoreboard objectives remove count

【統合版】②以外はJava版と同じ。

②clear @p golden_shovel 0 0

①プレイヤーに金のシャベルを与える。
------
②プレイヤーが金のシャベルを持っている時、信号を出す。
③信号がある時、「count」のティックを1足す。
④スコアボード「count」を作成。
⑤範囲座標「D、E」を消去(10の位)。
------
⑥スコアボード「count」を削除。

 

ストップウォッチ。

金のシャベルを持っている時、装置を起動。1の位、10の位、100の位のスコアを個別に数えます。

①②はコンパレーターで繋ぐ。②⑤⑧⑪は動力が必要。リピーターで繋ぐ。チェーンブロックは全て条件付き。

【Java版】

①clear @p golden_shovel 0
------
②execute if score "ティック" count matches 20..
③scoreboard players set "ティック" count 0
④scoreboard players add "1の位" count 1
------
⑤execute if score "1の位" count matches 10..
⑥scoreboard players set "1の位" count 0
⑦scoreboard players add "10の位" count 1
------
⑧execute if score "10の位" count matches 10..
⑨scoreboard players set "10の位" count 0
⑩scoreboard players set "100の位" count 1
------
⑪execute if score "100の位" count matches 1..
⑫clear @p golden_shovel

【統合版】①以外はJava版と同じ。

①clear @p golden_shovel 0 0

①プレイヤーが金のシャベルを持っている時、信号を出す。
------
②「count」のティックが20以上になった時、信号を出す。
③「count」のティックを0に設定。
④「count」1の位に1を足す。
------
⑤「count」の1の位が10以上になった時、信号を出す。
⑥「count」の1の位を0に設定。
⑦「count」10の位に1を足す。
------
⑧「count」の10の位が10以上になった時、信号を出す。
⑨「count」の10の位を0に設定。
⑩「count」100の位に1を足す。
------
⑪「count」の100の位が1以上になった時、信号を出す。
⑫プレイヤーから金のシャベルを削除。

 

時間を変更する場合は、⑪のコマンドを変更。※10秒単位で調整可。
例)50秒で止める場合。
execute if score 10の位 count matches 5..

 

タイマー装置

ストップウォッチとは逆に、数字を減らす装置を作ります。残り時間を設定し、数字が0になったら装置を停止。※最大99秒。

 

時間の設定。

タイマーの時間を設定する装置を作ります。ボタンを押すたびスコアを1増やします。

画像に合わせてブロックを配置。銅、錆止めされた酸化した銅には、石のボタンを付けておきます。 ※ディスプレイ装置は非表示にしています。

【Java版/統合版 共通】

①scoreboard objectives add count dummy
②fill 4 -58 9 6 -56 9 air
③scoreboard players add "1の位" count 1
④scoreboard players set "オン" count 1
------
⑤scoreboard players add "10の位" count 1

①スコアボード「count」を作成。
②範囲座標「B、C」を消去(1の位)。
③「count」の1の位を1足す。
④「count」のオンを1に設定。※ループ装置の信号をオン。
------
⑤「count」の10の位を1足す。

 

起動スイッチ(鉄)。

プレイヤーに鉄のシャベルを与え、装置を起動します。※一部のコマンドブロックをストップウォッチ装置と併用しています。

鉄ブロックには、石のボタンを付けておきます。③は動力が必要。

【Java版】

①give @p iron_shovel
------
②clear @p iron_shovel 0
③scoreboard players add "ティック" count 1

【統合版】②以外はJava版と同じ。

②clear @p iron_shovel 0 0

①プレイヤーに鉄のシャベルを与える。
------
②プレイヤーが鉄のシャベルを持っている時、信号を出す。
③信号がある時、「count」のティックを1足す。

 

タイマー。

鉄のシャベルを持っている時、装置を起動。1の位、10の位、100の位のスコアを個別に数えます。※詳しい解説は省略。

①②、⑪⑫はコンパレーターで繋ぐ。②⑤⑧⑪⑫は動力が必要。リピーターで繋ぐ。チェーンブロックは全て条件付き。

◎サイドバーに「count」を表示。
動作確認のため表示しておきます。装置が完成したら不要です。
/scoreboard objectives setdisplay sidebar count

【Java版】

①clear @p iron_shovel 0
------
②execute if score "ティック" count matches 20..
③scoreboard players set "ティック" count 0
④scoreboard players remove "1の位" count 1
------
⑤execute if score "1の位" count matches ..-1
⑥scoreboard players remove "10の位" count 1
⑦scoreboard players set "1の位" count 9
------
⑧execute if score "10の位" count matches ..0
⑨scoreboard players set "10の位" count -1
⑩fill 0 -58 9 2 -56 9 air
------
⑪execute if score "10の位" count matches ..-1
------
⑫execute if score "1の位" count matches ..0
⑬clone 0 -58 4 2 -56 4 4 -58 9
⑭scoreboard objectives remove count
⑮clear @p iron_shovel
⑯scoreboard players set "オン" count 0

【統合版】①以外はJava版と同じ。

①clear @p golden_shovel 0 0

⑬1の位に0を表示。
⑯「count」のオンを0に設定。※ループ装置の信号をオフ。

 

ループ装置。

1の位、10の位の数字を、0〜9でループします。

①②はコンパレーターで繋ぐ。②④は動力が必要。リピーターで繋ぐ。チェーンブロックは全て条件付き。

【Java版/統合版 共通】

①execute if score "オン" count matches 1..
------
②execute if score "1の位" count matches 10..
③scoreboard players set "1の位" count 0
------
④execute if score "10の位" count matches 10..
⑤scoreboard players set "10の位" count 0

 

操作方法

ひとつのディスプレイで、ストップウォッチとタイマーを切り替えて使うことが出来ます。

金、鉄ブロックの上に、矢印ブロックを設置。

 

ストップウオッチの場合。

ストップウオッチの開始/金ブロックのボタンを押す。
時間の設定/ストップウオッチ⑪のコマンドブロックで設定しておきます。
装置の停止/設定した時間になるか、金のシャベルを消す、捨てると停止。

◎注意点 

開始時間の変更は出来ません。銅ブロックを押してしまった場合は、一度停止してから再度金ブロックを押してください。ラップ機能はありません。

 

タイマーの場合。

タイマーの開始/鉄ブロックのボタンを押す。※時間を設定しない場合は10秒。
時間の設定/銅ブロックを押し「1の位」を設定。続けて錆止めされた酸化した銅を押し「10の位」を設定。
装置の停止/0秒になるか、鉄のシャベルを消す、捨てると停止。

◎注意点 

時間の設定は、銅ブロック「1の位」からする必要があります。