更新日:
よく使う設定
| やりたいこと | コンポーネント(Java版) |
|---|---|
| 名前を付ける | custom_name |
| 説明文を付ける | lore |
| エンチャント | enchantments |
| 壊れなくする | unbreakable |
| エンチャントの光だけ付ける | enchantment_glint_override |
| スタック数を変える | max_stack_size |
例:名前と説明文の付いた剣
下の書き方はJava版1.21.5以降の形です。それより前の版では書き方が違うため、ジェネレーターで版を選んで作ってください。
/give @p diamond_sword[custom_name={"text":"勇者の剣","color":"gold","italic":false},lore=[{"text":"王国に伝わる剣","color":"gray","italic":false}],enchantments={sharpness:5,unbreaking:3}] 1
名前や説明文は、何も指定しないと斜体で表示されます。"italic":falseを付けるとまっすぐな文字になります。
例:光るだけのアイテム
/give @p nether_star[enchantment_glint_override=true,custom_name="特別なチケット"] 1
エンチャントの効果は付けずに、キラキラした見た目だけにできます。イベントの景品やチケットに向いています。
カスタムアイテムを判定する
「このチケットを持っている人だけ通す」のような仕組みには、アイテムに目印を付けて判定します。Java版ではcustom_dataに好きな情報を入れておき、clearやexecuteで調べます。
/give @p paper[custom_data={ticket:1b},custom_name="入場チケット"] 1
/execute as @a if items entity @s weapon.mainhand paper[custom_data~{ticket:1b}] run say チケットを持っています
名前で判定する方法もありますが、金床で同じ名前を付けられてしまうため、custom_dataを使うほうが確実です。
統合版でできること
統合版のgiveでは、名前や説明文、上限を超えるエンチャントは付けられません。使えるのは次のような設定です。
/give @p diamond_pickaxe 1 0 {"minecraft:can_destroy":{"blocks":["stone"]},"minecraft:keep_on_death":{}}
壊せるブロックの制限(can_destroy)、置ける場所の制限(can_place_on)、死んでも消えない(keep_on_death)、インベントリに固定(item_lock)などです。名前は金床で付けます。
よくある質問
説明文を複数行にしたいです。
loreは角かっこの中に複数の文章を並べると、1つずつ別の行になります。
作ったアイテムが重なりません。
名前やエンチャントが少しでも違うアイテムは、別のアイテムとして扱われるので重なりません。同じコマンドで作れば重なります。
新しい見た目のアイテムを作れますか?
Java版ではリソースパックとitem_modelコンポーネントを組み合わせると、見た目を変えられます。