MC CommanderMinecraft非公式コマンド支援

アイテムを捨てると発動するコマンド

Java版では、アイテムを捨てた回数をスコアで数えたり、地面に落ちているアイテムの種類を調べたりできます。これを使うと、祭壇にアイテムを投げ入れて報酬をもらうしかけや、捨てられない大事なアイテムが作れます。

executescoreboardJava版1.20.5以降

executeコマンドを作る

更新日:

1. アイテムを捨てたら発動する

# 最初に1回だけ
scoreboard objectives add drop minecraft.custom:minecraft.drop
# 反復・常時実行
execute as @a[scores={drop=1..}] run tellraw @s {"text":"アイテムを捨てました","color":"gray"}
# チェーン・常時実行
scoreboard players reset @a[scores={drop=1..}] drop

minecraft.drop は、アイテムを捨てた回数を数えるスコアです。捨てた人のスコアが1以上になるので、その人にコマンドを実行してからスコアを0に戻します。

2. 投げ入れると交換できる祭壇

# 反復・常時実行
execute positioned 0 64 0 as @e[type=item,distance=..1.5] if items entity @s contents minecraft:diamond run tag @s add offered
# チェーン・常時実行
execute as @e[type=item,tag=offered] at @s run give @p minecraft:emerald 5
# チェーン・常時実行
kill @e[type=item,tag=offered]

座標(0, 64, 0)のまわり1.5ブロックに落ちたダイヤを見つけて目印を付け、一番近いプレイヤーにエメラルド5個を渡してから、ダイヤを消します。contents は、落ちているアイテムの中身を調べるときの書き方です(1.20.5以降)。範囲の決め方は 決まった範囲に入ったら発動するコマンド も参考にしてください。

3. 捨ててもすぐ戻ってくるアイテム

/give @s minecraft:compass[custom_name="大事なコンパス",custom_data={bound:1b}]
# 反復・常時実行
execute as @e[type=item] if items entity @s contents *[custom_data~{bound:1b}] at @s run tp @s @p
# チェーン・常時実行
execute as @e[type=item] if items entity @s contents *[custom_data~{bound:1b}] run data modify entity @s PickupDelay set value 0s

目印(bound:1b)の付いたアイテムが落ちると、一番近いプレイヤーの足元へ移動し、すぐに拾える状態にします。うっかり捨てても手元に戻るので、ミニゲームの大事なアイテムに使えます。* は「どのアイテムでも」という意味です。

4. 落ちているアイテムをまとめて消す

/kill @e[type=item]

地面に落ちているアイテムを全部消します。サーバーが重いときの対策にもなります(killコマンドの使い方)。

5. 統合版の場合

統合版には、アイテムを捨てた回数のスコアや、落ちているアイテムの中身を調べる if items の書き方がありません。この記事のコマンドはJava版で使います。

うまくいかないときの確認ポイント

よくある質問

投げたアイテムの数で報酬を変えられますか?

落ちているアイテムの数は、データの count で調べられます。execute store で数をスコアに入れて比べると、数に応じた報酬にできます。

捨てられないようにするだけの方法はありますか?

Java版には捨てること自体を止めるコマンドはありません。この記事のように、捨てたアイテムをすぐ戻す方法を使います。

統合版でもできますか?

統合版では、捨てたことや落ちているアイテムの中身を調べる方法がないので、この記事の方法は使えません。

関連ページ

決まった範囲に入ったら発動するコマンド

範囲の決め方です。

右クリックで発動するアイテムの作り方

ほかのスイッチの作り方です。

村人ショップを作るコマンド

ほかの交換のしかけです。

killコマンドの使い方

落ちたアイテムを消します。

コマンド辞典

基本構文とコマンド別の使い方を確認できます。