复活Bukkit的PDC(1)
前言 Bukkit在11400扩展了NMS的NBT存储,使其能够非常方便的存取来自第三方的各种类型(Int, Double, Long, String, 各种Array,以及更后期的Boolean和List)的持久化数据到游戏内的各种载体(生物,物品,方块,甚至区块和世界),此“接口”对应Bukkit的org.bukk
让旧版本 Bukkit 用上 PersistentDataContainer 的踩坑实录
共 5 篇文章-封面.jpg)
前言 Bukkit在11400扩展了NMS的NBT存储,使其能够非常方便的存取来自第三方的各种类型(Int, Double, Long, String, 各种Array,以及更后期的Boolean和List)的持久化数据到游戏内的各种载体(生物,物品,方块,甚至区块和世界),此“接口”对应Bukkit的org.bukk
-封面.jpg)
前言 在上一篇文章中,我们讨论并尝试了回迁PDC的上层借口,本篇文章将详细讨论CraftBlockEntityState ,CraftEntity ,CraftMetaItem 的中PDC的实现以及N
-封面.jpg)
前言 在11400加入的PDC,它的数据序列化涉及了MojangsonParser这种“难以对付的家伙”,所以值得我们新开一章单独讲解 CraftNBTTagConfigSerializer 此类为CraftBukkit提供的PDC NBT对象序列化/反序列化类,它主要含有两个方法 java public static
-封面.jpg)
前言 在前几节中我们已经实现了11400中PDC中的全部功能,但它的载体仅限于方块、生物和物品,在后期的Bukkit中世界和区块也被纳入了PDC可以管辖的范围,所以在本篇文章中我们将讨论更高版本中(以11605)新加入的现代化PDC载体:世界和区块 注:由于11605和11202的NMS相比世界和区块的加载方式发生了非
-封面.jpg)
前言 本篇文章作为复活PDC的最后一章,主要会将现代化的PDC(以11605为例)类型存储和一些现代化PDC拥有的方法移植到11202,并且提供一些测试PDC是否正常工作的测试用例 移植现代化PDC数据类型 接口改造 首先移植Bukkit为现代化PDC提供的新接口 在PersistentDataType中添加 java