Minecraft-Java-Edition
(Java Minecraft 1.14)戰利品表獎勵不會與 /given 項目疊加,即使它們具有相同的 nbt?
我在數據包中有一個項目,它具有直接提供給玩家的補充功能(用於測試),以及戰利品表中的一個條目(這是生存玩家獲得它的方式)。我最近注意到這兩個項目在任何情況下都不會堆疊,即使它們應該具有完全相同的nbt 數據。該
/give
命令如下所示:give @s minecraft:quartz{dmd_dark_quartz:1b,CustomModelData:256,display:{Name:"{\"text\":\"Dark Quartz\",\"color\":\"dark_purple\",\"italic\":\"false\"}"}} 1
雖然戰利品表如下所示:
{ "type": "minecraft:item", "conditions": [ { "condition": "random_chance", "chance": 0.75 } ], "functions": [ { "function": "set_name", "name": {"text":"Dark Quartz","color":"dark_purple","italic":"false"} }, { "function": "set_nbt", "tag": "{dmd_dark_quartz:1b,CustomModelData:256}" }, { "function": "minecraft:explosion_decay" } ], "name": "minecraft:quartz" }
當我將這兩個物品握在手中並使用
/data get entity @s SelectedItem
時,唯一的區別是在戰利品表版本中斜體的錯誤值周圍沒有引號。這是一張圖片以進一步澄清我的意思: 我強調了不同的價值觀。有誰知道這是一個錯誤還是什麼原因造成的?我認為這可能是一個錯誤,因為所有其他值(例如)都有引號,但那個單數沒有。是因為它是真/假值並且不需要引號嗎?如果它們堆疊起來,我會更喜歡,因為這樣測試會更容易,而且我不必測試兩個版本的所有內容,但是在命令中不包括引號似乎有點褻瀆神明。經過進一步測試,不包括
/give
命令中的引號會給出與戰利品表版本具有完全相同的nbt(因此/data get
看起來完全相同)但仍不與任何一個堆疊的項目。關於為什麼會發生這種情況的任何答案?
false
不應該在引號中。
嘗試僅使用 set_nbt 函式,例如:
"function": "set_nbt", "tag": "{display:{Name:'{\"text\":\"Dark Quartz\",\"color\":\"dark_purple\",\"italic\":false}'},CustomModelData:1}"
我在流浪交易者交易中測試它,它奏效了!名稱、顏色和斜體選項與 /give 命令中的參數完全相同。