金子89
本帖最后由 金子89 于 2018-7-14 22:10 编辑

最近在弄lootable....

  1. {"pools":
  2.         [{"rolls":1,
  3.         "bonus_rolls":0,
  4.         "entries":
  5.                 [{"type":"item",
  6.                 "name":"minecraft:written_book",
  7.                 "functions":
  8.                         [{"function":"set_nbt",
  9.                         "tag":
  10. "{title:"委托:烧火的木材",author:"委托",pages:["{"text":"","extra":[{"text":"委托性质:个人","color":"blue"},{"text":"委托内容:"},{"text":"我是个和部队走散的士兵。想要在营地生一堆火,但一时找不到足够的薪柴。附近的树木都被炮火毁光了。如果有好心人能送来一些就好了。"}]}","{"text":"","extra":[{"text":"委托需求:","color":"red"},{"text":"橡木木板32","color":"red"}]}","{"text":"","extra":[{"text":"提交委托","color":"dark_red","bold":true,"underlined":true,"clickEvent":{"action":"run_command","value":"/function questbooks:questbook1_"},"hoverEvent":{"action":"show_text","value":"请将委托需求物品按所列的顺序放入右边箱中"}}]}"]}"
  11.                         }],
  12.                         "weight":1,
  13.                         "quality":0
  14.                 }]
  15.         }]
  16. }
复制代码
其他地方都没问题。
"tag"后面的{}已经加了双引号,但是成书的NBTtag中title项、author项、pages项的方括号里都有双引号,会影响意义。但是如果直接在这些地方的双引号前面加上转移符\的话又会影响minecraft本身对NBTtag的解析,导致无法解析NBT(也就是出不来书)。
不知道有没有解决办法。

另:书的指令出自WpfMinecraftCommandHelper2
实在不行我就弄个兑换好了。就是把lootable所取得的改成能行的物品,然后换成书。


ruhuasiyu
把tag里面的\"都换成\\\", 而单个"都换成\"

类似地,第n层的话需要加上2的n次方-1个\转义

金子89
ruhuasiyu 发表于 2018-7-14 22:08
把tag里面的\"都换成\\\", 而单个"都换成\"

类似地,第n层的话需要加上2的n次方-1个\转义 ...

ok可以了,多谢哈
另外直接写在function里的话,是不能这么做的,只有json才能解读

ruhuasiyu
金子89 发表于 2018-7-15 10:35
ok可以了,多谢哈
另外直接写在function里的话,是不能这么做的,只有json才能解读 ...

function也是可以的,和在CB中一样,
  1. give @s written_book 1 0 {title:"委托:烧火的木材",author:"委托",pages:["{"text":"","extra":[{"text":"委托性质:个人","color":"blue"},{"text":"委托内容:"},{"text":"我是个和部队走散的士兵。想要在营地生一堆火,但一时找不到足够的薪柴。附近的树木都被炮火毁光了。如果有好心人能送来一些就好了。"}]}","{"text":"","extra":[{"text":"委托需求:","color":"red"},{"text":"橡木木板32","color":"red"}]}","{"text":"","extra":[{"text":"提交委托","color":"dark_red","bold":true,"underlined":true,"clickEvent":{"action":"run_command","value":"/function questbooks:questbook1_"},"hoverEvent":{"action":"show_text","value":"请将委托需求物品按所列的顺序放入右边箱中"}}]}"]}
复制代码

第一页 上一页 下一页 最后一页