マイクラの/clearコマンドは、プレイヤーのインベントリから特定のアイテムを削除できるコマンドです。対象プレイヤーの指定、対象アイテムの指定、削除数の上限の指定が可能。Java版・統合版どちらでも使えます。




/clearコマンドの基本的な使い方

clearコマンドの構文

マイクラの/clearコマンドの構文は以下のようになっています。

Java版
/clear [<targets>] [<item>] [<maxCount>]

統合版
/clear [player: target] [itemName: Item] [data: int] [maxCount: int]

「target」で対象プレイヤーを、「item」で削除するアイテムを、「maxCount」で削除する個数を指定します。チャット欄でのコマンド入力では、いずれも省略することが可能です。具体的な入力例を以下で紹介します。

すべてのアイテムを削除する

/clear

ターゲットやアイテムを指定せず/clearだけで実行すると、コマンド実行者の全アイテムが削除されます。/clearコマンドで削除したアイテムはもとに戻すことができないので、実行するときは十分に注意しましょう。

対象プレイヤーのアイテムを削除する

プレイヤー名やターゲットセレクターを入力すると、指定されたプレイヤーにだけ/clearコマンドを適用できます。指定できるのはプレイヤーのみ。村人やモンスターなどは指定できません。

例1:/clear nishi10
例2:/clear @p
例3:/clear @r
例4:/clear @a

例1のコマンドを実行するとプレイヤーnishi10の、例2を実行すると最も近いプレイヤーの、例3を実行すると誰か一人の(ランダム)、例4を実行すると全プレイヤーのアイテムがすべて削除されます。

アイテムを指定して削除する

ターゲットに続けてアイテムIDを指定すると、指定したアイテムだけを削除することができます。

/clear @s minecraft:stone

上記のコマンドを実行すると、コマンド実行者のインベントリから石だけがすべて削除されます。IDの「minecraft:」の部分は省略可能です。

個数を指定して削除する

個数を指定してアイテムを削除することもできます。Java版ではアイテムIDのあとに個数を入力します。統合版ではアイテムIDのあとにデータ値を入力し、そのあとに個数を入力します。

Java版
/clear @s minecraft:stone 16

統合版
/clear @s minecraft:stone 0 16

上記のコマンドを実行すると、コマンド実行者のインベントリから石が16個だけ削除されます。

データ値について

統合版で個数を指定するときは、データ値の入力が必須です。なぜそうなっているかというと、もともとIDを共有しているアイテムがいくつかあり、データ値で種類が区別されていたから。例えば丸太なら、次のようになっています。

ID データ値 アイテム
log 1 樫の丸太
log 2 樺の丸太
log 3 トウヒの丸太

現在のバージョンではoak_log、birch_log、spruce_logと個別のIDが割り当てられているので、そちらを使いましょう。clearコマンドなどでデータ値が必要な場合は、0や-1を指定しておけばOKです。

名前付きのアイテムを指定して削除する

Java版では、データタグでより細かくアイテムを指定することができます。例えば、次のように入力すると、特定エンチャントがついたアイテムだけ削除することができます。

/clear @s golden_sword{Enchantments:[{id:"minecraft:sharpness",lvl:1s}]}

上記のコマンドを実行すると、金の剣のうち、ダメージ増加Ⅰのついた金の剣だけが削除されます。

次のように入力すると、特定の名前がついたアイテムだけ削除することができます。

/clear @s golden_sword{display:{Name:'{"text":"伝説の剣"}'}}

上記のコマンドを実行すると、「伝説の剣」という名前のついた金の剣がインベントリから削除されます。




/clearコマンドをアイテム検知に使う

アイテム検知用コマンドブロック

/clearコマンドは、指定したアイテムを持っていると成功し、指定したアイテムを持っていないと失敗します。そのため、削除数を0にして実行することで、該当アイテムを持っているかどうかの判定に利用できます。

アイテムを持っているときだけコマンド実行

1つ目のコマンドブロックに/clearコマンドを設定し、2つ目のコマンドブロックを「チェーン・条件付き」で設置すると、該当アイテムを持っているときだけ2つ目のコマンドブロックを動かすことができます。例えばJava版では、次のように設定します。

Java:1つ目のコマブロ(リピート、無条件、動力が必要)
clear @p diamond 0

Java版:2つ目のコマブロ(チェーン、条件付き、常時実行)
effect give @p minecraft:jump_boost 1

統合版では、次のようにコマンドを設定します。

統合版:1つ目のコマブロ(反復、無条件、レッドストーンが必要)
clear @p diamond 0 0

統合版:2つ目のコマブロ(チェーン、条件付き、常にアクティブ)
effect @p jump_boost 1

上記のように設定し、1つ目のコマンドブロックにつけたレバーをONにします。すると、もっとも近くにいるプレイヤーがダイヤモンドを持っているときに、跳躍力上昇のステータス効果が付与され続けます。ダイヤモンドを手放したときは、1秒後にステータス効果が消えます。

他のコマンドを使う方法

統合版では/excuteコマンドのhasitemを使うと、1つのコマンドブロックで同じことができます。

統合版:リピート、無条件、レッドストーンが必要
execute as @p[hasitem={item=diamond}] run effect @p jump_boost 1

effectコマンドを実行するなら、Java版だと次のコマンドでも同じことができます。

Java版:リピート、無条件、動力が必要
effect give @p[nbt={Inventory:[{id:"minecraft:diamond"}]}] jump_boost 1

アイテムを持っているときにRS信号をONに

コマンドブロックのコマンドが成功すると、コンパレーターでレッドストーン信号を取り出すことができます。/clearコマンドを設定しておけば、特定のアイテムを持っているときにだけレッドストーン回路がONになるスイッチが作れます。

特定のアイテムを持っているときにONになるスイッチ

リピートコマンドブロックにレバーを設置し、コンパレーターをつなぎます。コマンドブロックには以下のコマンドを設定します。

Java版:リピート、無条件、動力が必要
clear @p diamond 0

統合版:反復、無条件、レッドストーンが必要
clear @p diamond 0 0

ダイヤモンドを持っているときにだけ、コンパレーターがONになります。

以上、マイクラの/clearコマンドの基本的な使い方と、アイテムの所持を検知する方法の紹介でした。単にアイテムを消すだけでなく、条件をつけてアイテムを削除したり、アイテムの所持を検知したりできるコマンドです。いろいろ応用できるので、使い方を考えてみてください。マイクラの他のコマンドについては以下のページで紹介してるので、ぜひそちらも合わせてチェックしてみてください。