本帖最后由 MineCrocodile 于 2019-6-19 22:39 编辑 
复制代码使用以上两句代码
似乎是从箱子里把生成的书拿出来,打开一次后,再用同样的指令修改tag能成功显示在线玩家
否则书里只有“@a“这样的字样
一头雾水
使用以上两句代码
似乎是从箱子里把生成的书拿出来,打开一次后,再用同样的指令修改tag能成功显示在线玩家
否则书里只有“@a“这样的字样
一头雾水
- data modify block ~ ~1 ~ Items append value {Slot:0,id:written_book,Count:1b}
 
 
- data modify block ~ ~1 ~ Items[0].tag set value {pages:["["",{"selector":"@a","color":"red"}]"],title:CustomBook,author:IMYVM}
似乎是从箱子里把生成的书拿出来,打开一次后,再用同样的指令修改tag能成功显示在线玩家
否则书里只有“@a“这样的字样
一头雾水
2021.12 数据,可能有更多内容
本帖最后由 MineCrocodile 于 2019-6-19 22:39 编辑代码:
- data modify block ~ ~1 ~ Items append value {Slot:0,id:written_book,Count:1b}
 
 
- data modify block ~ ~1 ~ Items[0].tag set value {pages:["["",{"selector":"@a","color":"red"}]"],title:CustomBook,author:IMYVM}
似乎是从箱子里把生成的书拿出来,打开一次后,再用同样的指令修改tag能成功显示在线玩家
否则书里只有“@a“这样的字样
一头雾水
我再解释一下哈
我想做的事情是在一个箱子里,生成一本显示在线玩家名字的书
想用上面的代码实现,但是我发现有的时候把这本书拿出来检查,能显示全体在线玩家的名字,有的时候却只有“@a”这个词
进一步研究发现,我使用上述代码生成书之后,需要拿出来打开一次(这时显示的是“@a”)
然后再运行一次复制代码这句代码,多数情况下可以实现我要的目的
不知道这次有没有解释清楚
我想做的事情是在一个箱子里,生成一本显示在线玩家名字的书
想用上面的代码实现,但是我发现有的时候把这本书拿出来检查,能显示全体在线玩家的名字,有的时候却只有“@a”这个词
进一步研究发现,我使用上述代码生成书之后,需要拿出来打开一次(这时显示的是“@a”)
然后再运行一次
- data modify block ~ ~1 ~ Items[0].tag set value {pages:["["",{"selector":"@a","color":"red"}]"],title:CustomBook,author:IMYVM}
不知道这次有没有解释清楚
1. 我知道你转义了,但是论坛的 [code] 有 bug,会吞斜杠,不要用。
2. 建议以告示牌做中转,即先把 {"selector":"@a","color":"red"} 编辑到告示牌上,再把告示牌的内容用 data modify block ~ ~1 ~ Items[0].tag.pages[0] set from block <告示牌> Text1 复制到书上。
2. 建议以告示牌做中转,即先把 {"selector":"@a","color":"red"} 编辑到告示牌上,再把告示牌的内容用 data modify block ~ ~1 ~ Items[0].tag.pages[0] set from block <告示牌> Text1 复制到书上。
SPGoding 发表于 2019-6-19 22:38
1. 我知道你转义了,但是论坛的 [code] 有 bug,会吞斜杠,不要用。
2. 建议以告示牌做中转,即先把 {"sele ...
非常感谢!