替換方塊(儲物箱、熔爐等)或實體(玩家或生物)物品欄內的物品。
語法[]
replaceitem block <position: x y z> slot.container <slotId: int> <itemName: Item> [amount: int] [data: int] [components: json]replaceitem block <position: x y z> slot.container <slotId: int> <oldItemHandling: ReplaceMode> <itemName: Item> [amount: int] [data: int] [components: json]replaceitem entity <target: target> <slotType: EntityEquipmentSlot> <slotId: int> <itemName: Item> [amount: int] [data: int] [components: json]replaceitem entity <target: target> <slotType: EntityEquipmentSlot> <slotId: int> <oldItemHandling: ReplaceMode> <itemName: Item> [amount: int] [data: int] [components: json]
參數[]
position: x y z(僅block模式)
- 指定要改變的方塊的位置。可用波浪號來指定一個相對於指令執行處的位置。
target: target(僅entity模式)
- 指定要改變的實體。必須為一個玩家名或目標選擇器。
slotType: EntityEquipmentSlot、slot.container和slotId: int
- 指定要改變的物品欄欄位。有效值取決於要改變的方塊或實體。
- 對於方塊,必須為
slot.container 欄位編號,其中欄位編號用具體的欄位編號數值代替。
- 對於實體,必須為下列之一,其中欄位編號用具體的欄位編號數值代替:
欄位 欄位編號 限制 slot.weapon.mainhand 槽位编号任意值 僅盔甲座、生物及玩家(雖然並非所有生物會顯示或利用這些物品) slot.weapon.offhand 欄位編號slot.armor.head 欄位編號(頭盔)slot.armor.chest 欄位編號(胸甲)slot.armor.legs 欄位編號(護腿)slot.armor.feet 欄位編號(靴子)slot.enderchest 欄位編號0至26 僅玩家 slot.hotbar 欄位編號0至8 slot.inventory 欄位編號0至物品欄的欄位上限 僅玩家、村民、豬布林、貓熊、悅靈、漏斗礦車、儲物箱礦車、指令方塊礦車,以及馴服的馬、驢子、騾子和駱馬 slot.saddle 欄位編號任意值 僅馴服的馬、驢子和騾子;物品名必須為鞍或空氣 slot.armor 欄位編號0至1 僅馴服的馬;物品名必須屬於馬鎧或空氣 slot.chest 欄位編號0至14 僅馱儲物箱的驢子和騾子 slot.equippable 欄位編號0至1僅 hasitem0:僅馬、驢子和騾子;物品名必須為鞍或空氣
1:僅馬和駱馬;物品名必須屬於馬鎧(馬)、地毯(駱馬)或空氣
itemName: Item
amount: int(可選)
- 指定被放置物品的數量。必須在1至64間(含),可以突破物品的堆疊限制。
data: int(可選)
- 指定被放置物品的物品資料。必須為一個在-2,147,483,648至2,147,483,647間(含,不輸入逗號)的整數,且在對指定物品無效時被重設為0。若未指定,預設為0。
components: json(可選)
- 指定被放置物品的物品組件。類似於NBT標籤,但僅支持
minecraft:can_place_on、minecraft:can_destroy、minecraft:item_lock和minecraft:keep_on_death。
oldItemHandling: ReplaceMode(可選)
- 必須是下列之一:
destroy- 忽略指定欄位中的原始物品,直接進行替換。keep- 如果一個物品佔用了該欄位,則不進行替換。
效果[]
| 指令 | 觸發條件 | 基岩版 |
|---|---|---|
| 任意 | 參數未正確指定 | 無法解析 |
amount: int小於1或大於64 | 執行失敗 | |
/replaceitem block ... | 指定的方塊並非容器 | |
| 指定的方塊不擁有指定的欄位 | ||
/replaceitem entity ... | <target: target> 無法解析指定實體(指定玩家必須線上) | |
目標實體沒有指定的欄位(例如,殭屍沒有slot.armor),或指定欄位無法被替換為指定物品 | ||
指定欄位無法放入指定物品(例如玩家的armor.chest無法放入石頭) | ||
/replaceitem ... keep | keep模式下指定的欄位已擁有物品 | |
| 任意 | 執行成功時 | 將指定欄位替換為指定物品(原物品丟失) |
輸出[]
| 指令 | 版本 | 條件 | 成功次數 | /execute store success ... | /execute store result ... |
|---|---|---|---|---|---|
| 任意 | 基岩版 | 執行失敗 | 0 | N/A | N/A |
/replaceitem block ... | 執行成功 | 1 | N/A | N/A | |
/replaceitem entity ... | 執行成功 | 被成功替換物品的實體的數量 | N/A | N/A |
示例[]
- 將上方1格處的一個小型儲物箱右下角欄位內的物品替換成4棵杉木樹苗:
replaceitem block ~ ~1 ~ slot.container 26 minecraft:sapling 4 1
- 將自己的快捷欄最右欄位內的物品替換成4棵杉木樹苗:
replaceitem entity @s slot.hotbar 8 minecraft:sapling 4 1
- 將所有人的非慣用手內的物品換成空氣:
replaceitem entity @a slot.weapon.offhand 0 air 1 0
- 把自己物品欄右下角欄位內的物品換成空氣:
replaceitem entity @s slot.inventory 26 air 1 0
歷史[]
| Java版 | |||||
|---|---|---|---|---|---|
| 1.8 | 14w26a | 加入了/replaceitem指令。 | |||
| 1.14 | 18w43a | 現在可以在物品展示框上使用。 | |||
| 1.17 | 20w46a | 移除了/replaceitem,並加入了/item取代其功能。 | |||
| 攜帶版 | |||||
| 1.0.5 | 1.0.5.0 | 加入了/replaceitem指令。 | |||
| 1.1.0 | 1.1.0.0 | 現在/replaceitem指令支持canplaceon和candestroy。 | |||
| 基岩版 | |||||
| 1.16.0 | 1.16.0.55 | 為/replaceitem加入了新參數destroy和keep來指定替換模式。 | |||