zxcsqq
net.minecraft.item.ItemStack 有方法转换成 org.bukkit.inventory.ItemStack 吗?






结冰的离季
本帖最后由 结冰的离季 于 2022-4-14 13:17 编辑

一般来说这种功能是提供 插件与mod共存的功能 的服务端提供的API,每种服务端都不一样,建议翻一翻对应服务端的API

你如果要自己写,可能得将目标net.minecraft.item.ItemStack  序列化为 String类型,String类型 再反序列化成  org.bukkit.inventory.ItemStack 这2 应该都有这功能,当然也不一定可以


zxcsqq
结冰的离季 发表于 2022-4-14 13:11
一般来说这种功能是提供 插件与mod共存的功能 的服务端提供的API,每种服务端都不一样,建议翻一翻对应服务 ...

就是nbt序列化 里面一堆都是混淆的方法 很绕脑

贺兰兰
结冰的离季 发表于 2022-4-14 13:11
一般来说这种功能是提供 插件与mod共存的功能 的服务端提供的API,每种服务端都不一样,建议翻一翻对应服务 ...

楼主没说版本...在高版本下 net.minecraft.item.ItemStack 可能代表的是 NMS,而不是 Forge 啊
在这个情况下,只需要调用 CraftItemStack 类下的静态转换方法即可互相转换

结冰的离季
本帖最后由 结冰的离季 于 2022-4-14 14:29 编辑
贺兰兰 发表于 2022-4-14 13:33
楼主没说版本...在高版本下 net.minecraft.item.ItemStack 可能代表的是 NMS,而不是 Forge 啊
在这个情况 ...


但是我在1.18下没找到这个包,所以我猜是forge,因为我没写过forge

而且nsm不是指net.minecraft.server吗。。
CraftItemStack我也翻了下源码,他的包名是net.minecraft.world.item.ItemStack

https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/browse/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java

结冰的离季
zxcsqq 发表于 2022-4-14 13:20
就是nbt序列化 里面一堆都是混淆的方法 很绕脑

你先说清楚这个包是哪里的,

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