Minecraft【基本装置】クロック回路(コマンド)。

2024-02-16

Java版1.20.2、統合版はv1.20.31で動作確認。

コマンドを使ってクロック信号を作り、時間を計ります。

コマンドを使って、一定間隔で信号を出す装置を作ります。同じ動作を繰り返したり、タイマーやストップウオッチなど、時間を計るのに使います。マシンスペックにもよりますが、安定した早いクロック信号も作ることが出来ます。

クロック信号を作る方法はいくつかありますが、回転式、ティック式とJava版、統合版専用のクロック信号装置紹介します。

◻︎装置の特徴
・回転式のクロック信号装置(Java版/統合版)。
・ティック式のクロック信号装置(Java版/統合版)。
・エフェクト「active_effects」を使ったクロック信号装置(Java版)。※1.20.2以上。
・ティックの遅延を使ったクロック信号装置(統合版)。

 

目次

1.【Java版/統合版】 回転式のクロック信号装置。
・防具立ての召喚。
・クロック信号装置(回転式)。
・角度の検知。

2.【Java版/統合版】 ティック式のクロック信号装置。
・スコアボード作成。
・クロック信号装置(ティック式)。

3.【Java版】専用。エフェクト式のクロック信号装置。
・防具立ての召喚。
・クロック信号装置(エフェクト式)。

4.【統合版】専用。遅延式のクロック信号装置。
・クロック信号装置(遅延式)。

 

【Java版/統合版】 回転式のクロック信号装置。

防具立てを回転し、向きを検知します。回転する角度や、検知方向を増やせば早いクロック信号を作ることも出来ます。防具立ては綺麗に回転するので、見た目も面白くなります。

スコアボード不要。正確なクロック信号も作れるので、タイマーにも使えます。ひとつの装置でクロック信号、乱数を作る装置としてマルチな使い方も出来ます。※タイマーを作る場合は、スコアボードを使います。

防具立ての召喚。

【Java版/統合版】

◻︎チャットコマンドで入力。

/summon armor_stand ~ ~ ~

/防具立てを召喚。※帽子を被せておくと方向が分かりやすい。※統合版の場合は名前を付けて召喚。/summon armor_stand 防具立て ~~~

 

クロック信号装置(回転式)。

リピートブロックは1秒間で20回の信号(20ティック)を繰り返すので、防具立てのy軸を「18度」でテレポートすれば、1周約1秒で回転します。

テレポートする時、防具立ては回転するように動きますが、検知出来るのは「指定した角度」または「指定した角度を含む範囲」だけです。

例えば「0度」を1箇所を検知するには、開始点を「0度」にして、防具立てのy軸を360度で割り切れる角度にします。

 

【Java版/統合版】

◻︎チャットコマンドに入力。

/execute at @e[name="防具立て"] run tp @e[name="防具立て"] ~ ~ ~ 0 ~

/防具立てをに向きにします。※開始点を設定(角度の初期化)。

◻︎リピートブロック(動力が必要)にレバーを設置。

①execute at @e[name="防具立て"] run tp @e[name="防具立て"] ~ ~ ~ ~18 ~

①信号がある時、防具立てを「18度」回転します(回転角度の大きさ)。

 

角度の検知。

南が原点で「0度」。南西北は正の数「0度〜180度」。北東南は負の数「-180度〜0度」になります。 ※北は正の数と負の数が被っています。「180度、または-180度」のどちらでも検知出来ます。

東西南北の角度。1箇所を検知する場合。

【Java版】

◻︎リピートブロック(動力が必要)。

①execute if entity @e[name="防具立て",y_rotation=0] run say 南
②execute if entity @e[name="防具立て",y_rotation=90] run say 西
③execute if entity @e[name="防具立て",y_rotation=180] run say 北
④execute if entity @e[name="防具立て",y_rotation=-90] run say 東

北の場合は「y_rotation=-180」でも可。

 

【統合版】

◻︎リピートブロック(動力が必要)。

①execute if entity @e[name="防具立て",rym=0,ry=0] run say 南
②execute if entity @e[name="防具立て",rym=90,ry=90] run say 西
③execute if entity @e[name="防具立て",rym=180,ry=-180] run say 北
④execute if entity @e[name="防具立て",rym=-90,ry=-90] run say 東

※「rym=」開始角度〜「ry=」終了角度の指定が必要。

①南。②西。③北。④東。
指定した角度に防具立てが向いた時、コマンドが実行されます。

開始点を「0度」にして、「36度」で回転すれば、0.5秒のクロック信号が出来ます。「36度」で回転し、南と北で検知すれば、0.25秒のクロック信号が出来ます。※3倍の「54度」では360度を割り切れないため「0度」で検知出来ません。Java版では1ティックに1個のコマンドが実行出来ますが、統合版だと3ティックに1個が限度です。

 

【Java版/統合版】 ティック式のクロック信号装置。

ティックを利用したクロック信号装置。スコアボードが必要ですが、時間の調節も自由自在で、正確なクロック信号を作ることが出来ます。タイマー作成にもおすすめです。

スコアボード作成。

【Java版/統合版】

◻︎チャットコマンドで入力。

/scoreboard objectives add count dummy
/scoreboard objectives setdisplay sidebar count

/スコアボード「count」を作成。
/サイドバーに「count」を表示。

 

クロック信号装置(ティック式)。

【Java版/統合版】

◻︎リピートブロック(動力が必要)にレバーを設置。

①scoreboard players add ティック count 1

◻︎リピートブロック(常時実行)からチェーンで繋ぐ(常時実行、条件付き)。

②execute if score ティック count matches 20..
③scoreboard players set ティック count 0
④scoreboard players add count 1

①「count」のティックに1足す。
②「count」のティックが20以上になったら信号を出す。
③②が実行された時「count」のティックを0に設定。
④③が実行された時「count」のに1足す。

ストップウオッチにしていますが、③で止めれば、1秒クロック信号装置になります。※コンパレーター等を使うと遅延が発生するので注意。

 

【Java版】専用。エフェクト式のクロック信号装置。

スコアボード不要。防具立てにエフェクトを付けて信号を検知します。信号を繰り返す時、3ティックほど遅れまが、一定間隔で動くのでクロック信号装置になります。エフェクトの長さを指定出来るので、タイマーとしては優秀です。

防具立ての召喚。

【Java版】

◻︎チャットコマンドで入力。

/summon armor_stand ~ ~ ~

/防具立てを召喚。※帽子を被せておくと方向が分かりやすい。

 

クロック信号装置(エフェクト式)。

レッドストーンブロックから2個目のコンパレーターは、乗算モードにして信号を止めておきます。レッドストーンブロックを消すと、信号がループ。今回は防具立てに不幸エフェクトを付けています。※1.20.2からエフェクトのコマンドが変更になりました。

【Java版】

◻︎インパルス(動力が必要)。

①effect give @e[name="防具立て"] unluck 1 0 true

◻︎リピートブロック(常時実行)。

②data get entity @e[name="防具立て"",limit=1] active_effects[0].id

◻︎インパルス(動力が必要)。

③say クロック信号

①防具立てに不幸エフェクト1秒付けます。
②防具立てに動作しているエフェクトがある時、信号を出す。
③チャットに「クロック信号」と表示。

①では単位で時間を変更することが出来ます。エフェクトを検知する時、1秒でも300秒でも遅延が3ティックほどあります。開始と終了を計るだけなら、スコアボード要らずのお手軽タイマーにもなります。

 

【統合版】専用。遅延式のクロック信号装置。

統合版ではティックの遅延が使えるので、1個のブロックでクロック信号が簡単に作れます。他にもタイマーや楽譜などにも応用可能。最小にて最強の機能となります。

最初のティックで実行をオフ。※信号が合った時、最初にコマンドを実行するかどうかの選択。ティックの遅延:を20に設定。

 

クロック信号装置(遅延式)。

【統合版】

◻︎リピートブロック(動力が必要)にレバーを設置。

①say クロック信号

①信号がある時、1秒毎に、チャットに「クロック信号」と表示。