Minecraft【動く装置】 アイテムショップと通貨(両替機付)。No.5

Java版1.21.5-、統合版はv1.21.81-で動作確認。
エメラルドをPayにチャージして、ショップでお買い物。余った Payをエメラルドに戻します。
アイテムショップと通貨作成。v1.30
スコアボードを使ったデジタル通貨「Pay」とをエメラルドを交換出来る両替所を作ります。また「Pay」で購入できるアイテムショップも作成。v1.30では高速両替とマルチプレイに対応しました。持っている「Pay」は、アイテムショップにいる時だけアクションバーに表示。コマンド式のゴミ箱付き。装置は中級者向けとなります。
◻︎装置の特徴
・持っているアイテム検知。
・スコアをアクションバーに表示。
・コマンド式のゴミ箱。
・引数を使ったプレイヤーの検知。
更新履歴
2025-6-9/v1.21.5以降に対応。装置も改良しました。
2024-7-19/v1.21以降に対応。完成データも追加しました。
2024-3-24/再設計!新しくなった統合版のアイテム名に対応。装置の外観も変更しました。
2022-1-27/新設計!回路を簡単にして、統合版の新コマンドにも対応しました。
完成動画。v1.20
1.作成準備
・使用方法。
2.装置全体図
・配置と向き。
3.両替機
・エメラルドからPay。
・Payからエメラルド。
4.アイテムショップ
・商品と価格。
・コマンド入力。
5.コマンド式ゴミ箱
・トラップチェストのクローン。
6.仕上げ
・遊び方。
7.ワールドデータ
・完成データをダウンロード。
※「as」や「minecraft:」など、一部のコマンドは簡略化。必要な場合は記入してあります。
作成準備
使用方法。
コマンドブロックの使い方、「アイテム検知」や「hasitem」の詳細は、関連記事をご確認ください。
- 詳しくこちら→【テクニック】コマンドブロックの使い方。1-2
- 詳しくこちら→【テクニック】アイテム検知を使って、コマンド実行。2-2
装置全体図
配置と向き。
フラットワールドを作成したら、座標(0 -60 0)へ移動して開花したツツジの葉を設置。装置は開始点座標(0 -60 0)を基準に、南が正面がになるよう設置にしています。座標を合わせてブロックを設置していくと、コマンドはコピー&ペーストで作れます。

開始点は座標(0 -60 0)
❶プレイエリア ❷両替装置 ❸アイテムショップ ❹ゴミ箱
◻︎南向きを確認するには
ストラクチャーブロックを設置して、境界線の青い線が伸びる方が南。※赤い線は東。
/give @s structure_block
両替機
エメラルドからPay。
エメラルドとデジタル通貨「Pay」を交換する装置を作ります。

「A」は座標(2 -60 6)。「あ」は石ブロック。上にレッドストーンランプを設置。※音符ブロックはダミー。②③は条件付き。
【Java版】
| ①execute at @p[nbt={Inventory:[{id:"minecraft:emerald"}]},x=2,y=-59,z=6,dx=0,dy=0,dz=0] as @p[scores={Pay=0..}] run scoreboard players add @p[x=2,y=-59,z=6,dx=0,dy=0,dz=0] Pay 1 ②clear @p[x=2,y=-59,z=6,dx=0,dy=0,dz=0] emerald 1 ③playsound block.note_block.bell player @p[x=2,y=-59,z=6,dx=0,dy=0,dz=0] ~ ~ ~ 1 0.5 1 ------ ④execute if entity @p[nbt={Inventory:[{id:"minecraft:emerald"}]},x=2,y=-59,z=6,dx=0,dy=0,dz=0] |
【統合版】
| ①execute at @p[hasitem={item=emerald},x=2,y=-59,z=6,dx=0,dy=0,dz=0] as @p[scores={Pay=0..}] run scoreboard players add @p[x=2,y=-59,z=6,dx=0,dy=0,dz=0] Pay 1 ②clear @p[x=2,y=-59,z=6,dx=0,dy=0,dz=0] emerald 0 1 ③playsound note.bell @p[x=2,y=-59,z=6,dx=0,dy=0,dz=0] ~~~ 1 0.5 1 ------ ④execute if entity @p[hasitem={item=emerald},x=2,y=-59,z=6,dx=0,dy=0,dz=0] |
□「A」の座標にいるプレイヤー対象
①エメラルドを持っている時「Pay」を1追加。
②エメラルドを1個クリア。※統合版はデータ値も入力。
③効果音を鳴らす。(ベル音)
------
④エメラルドを持っている時、信号を出す。※ライト用。
Payからエメラルド。
デジタル通貨「Pay」をエメラルドに交換する装置を作ります。

「B」は座標(10 -60 6)。「い」は石ブロック。上にレッドストーンランプを設置。※音符ブロックはダミー。②③は条件付き。
【Java版】
| ①execute at @p[scores={Pay=1..},x=10,y=-59,z=6,dx=0,dy=0,dz=0] run scoreboard players remove @p[x=10,y=-59,z=6,dx=0,dy=0,dz=0] Pay 1 ②give @p[x=10,y=-59,z=6,dx=0,dy=0,dz=0] emerald 1 ③playsound block.note_block.bit player @p[x=10,y=-59,z=6,dx=0,dy=0,dz=0] ~ ~ ~ 1 0.5 1 ------ ④execute if entity @p[nbt={Inventory:[{id:"minecraft:emerald"}]},x=10,y=-59,z=6,dx=0,dy=0,dz=0] |
【統合版】
| ①execute at @p[scores={Pay=1..},x=10,y=-59,z=6,dx=0,dy=0,dz=0] run scoreboard players remove @p[x=10,y=-59,z=6,dx=0,dy=0,dz=0] Pay 1 ②give @p[x=10,y=-59,z=6,dx=0,dy=0,dz=0] emerald 1 ③playsound note.bit @p[x=10,y=-59,z=6,dx=0,dy=0,dz=0] ~~~ 1 0.5 1 ------ ④execute if entity @p[hasitem={item=emerald},x=10,y=-59,z=6,dx=0,dy=0,dz=0] |
□「B」の座標にいるプレイヤー対象
①「Pay」を1以上持っている時、1引く。
②エメラルドを1個与える。
③効果音を鳴らす。(電子音)
------
④「Pay」を持っている時、信号を出す。※ライト用。
アイテムショップ
商品と価格。
ショップに並べる商品を決めます。価格や個数が分かるように見本アイテムを額縁に設置。

※アイテムや価格など、自由に変更してください。
◻︎商品例
オークの原木/「Pay」1で20個。
鉄インゴット/「Pay」1で10個。
ダイヤモンドの剣/「Pay」3で1個。
【Java版】
| /give @p oak_log[custom_name="20個/Pay1"] 1 /give @p iron_ingot[custom_name="10個/Pay1"] 1 /give @p diamond_sword[custom_name="3個/Pay1"] 1 |
名前を変更したアイテムをコマンドから入手。
【統合版】
統合版は、金床を使ってアイテムの名前を変更します。※アイテム名が見えない場合、設定→ビデオ→ゲーム内プレイヤーの名前を表示をオンにします。
コマンド入力。
商品に合わせてコマンドを入力。

①は座標(8 -60 3)。②④⑥は条件付き。①③⑤に石ブロックを置き、木のボタンを設置。※仕上げ参照。
【Java版】
| ①execute if entity @p[scores={Pay=1..}] run scoreboard players remove @p Pay 1 ②give @p oak_log 20 ------ ③execute if entity @p[scores={Pay=1..}] run scoreboard players remove @p Pay 1 ④give @p iron_ingot 10 ------ ⑤execute if entity @p[scores={Pay=3..}] run scoreboard players remove @p Pay 3 ⑥give @p diamond_sword 1 ------ ⑦execute at @a[scores={Pay=0..},x=1,y=-59,z=4,dx=10,dy=1,dz=5] run title @p[scores={Pay=0..},x=1,y=-59,z=4,dx=10,dy=1,dz=5] actionbar [{"score":{"name":"@p","objective":"Pay"}},{"text":" Pay "}] |
①「Pay」を1以上持っている時、1引く。
②オークの原木を20個与える。
------
③④⑤⑥アイテムや価格に合わせて内容を変更します。
------
⑦プレイヤーがショップ内にいる時、スコアをアクションバーに表示。※レンガブロック上(ショップ内)を、引数で指定しています。
コマンド式ゴミ箱
トラップチェストのクローン。
クローンコマンドを使った簡単なゴミ箱を作ります。トラップチェストを閉じた時、空のトラップチェストをクローンします。

2段目のトラップチェスト「う」がゴミ箱。リピーターを石ブロックに繋ぎレッドストーントーチを設置。1段目に「う」と同じ向きで「え」のトラップチェスト、コマンドブロックを設置。

①は座標(7 -60 0)。アイテムショップ内に設置。
【Java版/統合版】
| ①clone 7 -60 1 7 -60 1 7 -59 3 |
①チェストを閉じた時、ゴミ箱を空にします。クローン元は「え」、クローン先は「う」の座標。
仕上げ

床や壁を設置し、両替所、アイテムショップを仕上げます。
遊び方。

エメラルドを持っている時、金ブロックの上に乗るとデジタル通貨「Pay」に両替します。

デジタル通貨「Pay」を使ってアイテムを購入。「Pay」が足りない時は購入出来ません。

デジタル通貨「Pay」を持っている時、エメラルドブロックの上に乗るとエメラルドに両替します。
ワールドデータ
完成データのダウンロード。
ワールドデータは、コマンド入力不要。「開始レバー」を下げると装置が起動。本体右のボタンを押すと、「Pay」が入手出来ます。
◎ダウンロード先/アイテムショップと通貨
□統合版【動く装置】アイテムショップと通貨v1.30.mcworld
iOS、Android/Minecraftで開く。Windows/ダブルクリックでインポート。
□Java版【動く装置】アイテムショップと通貨v1.30.zip
解凍後、ワールド内の「saves」フォルダに入れる。
※二次配布は禁止です。