15519143469
场景:  

监听了一些事件,  获取玩家的itemstack,    然后设置了lore   

itemMeta.setLore(lore);
itemStack.setItemMeta(itemMeta);

但是玩家把这个设置有lore的物品,先放置,然后在破坏  掉落后  去拾取这个方块物品 lore 居然全部没了,有啥我不知道的原理吗   



结冰的离季
因为 方块物品 变成 Block之后 没有绑定原ItemStack对象,从方块到物品其实是生成的一个新的 ItemStack,你可以自己实现一个绑定

FallingCreams
试试记录这个方块被放置/破坏时的位置来还原它的itemMeta?

15519143469
diexi 发表于 2022-11-1 06:47
试试记录这个方块被放置/破坏时的位置来还原它的itemMeta?

已经找到答案啦  ,你的方法也可以    好像mojang为了性能考虑,  Block 没有产生对象,    在方块掉落变成物品时候会产生对象,  这个对象好像是从游戏本身,加载出来的     如果是动态的的话  就需要考虑记录位置了    如果只是一个模版,考虑在启动的时候加载到内存中,  然后调用方块掉落事件  替换掉原来的物品信息就行了