我如何在 Minecraft Forge for Minecraft 1.15 中将 object 转换为 INBT 类型的 nbt
How do I convert an object to a nbt of type INBT in Minecraft Forge for Minecraft 1.15
我最近在开发我的 Minecraft mod,在开发函数的 return 语句时,我发现它需要 return 类型的 INBT 实例。我有一个自定义 object,我需要将其转换为 INBT
类型的 NBT?
这是函数:
public INBT writeNBT(Capability<IAllergies> capability, IAllergies instance, Direction side) {
return null;
}
我查看了 INBT
的类型层次结构,没有发现任何有用的东西。
提前致谢,
孩子科德
我知道怎么做了。
我所做的是创建一个 ObjectNBT
class 实现的 INBT
,并写了一些方法 get/set Object
这是我最后的 class 看起来像:
public class ObjectNBT implements INBT {
public Object object;
public ObjectNBT(Object object) {
this.object = object;
}
@Override
public void write(DataOutput output) throws IOException {
}
@Override
public byte getId() {
return 0;
}
@Override
public INBTType<?> func_225647_b_() {
return null;
}
@Override
public INBT copy() {
return null;
}
@Override
public ITextComponent toFormattedComponent(String indentation, int indentDepth) {
return new StringTextComponent(indentation + indentDepth);
}
}
随意复制和粘贴。
不,您不应该创建自己的 class。
这取决于你想要什么,但是有很多 classes,从 CompountNBT(有点像 Map),ListNBT(INBT 列表),到 BooleanNBT,StringNBT,IntegerNBT 等。
查看 INBT 的类型层次结构并选择您需要的。
我最近在开发我的 Minecraft mod,在开发函数的 return 语句时,我发现它需要 return 类型的 INBT 实例。我有一个自定义 object,我需要将其转换为 INBT
类型的 NBT?
这是函数:
public INBT writeNBT(Capability<IAllergies> capability, IAllergies instance, Direction side) {
return null;
}
我查看了 INBT
的类型层次结构,没有发现任何有用的东西。
提前致谢, 孩子科德
我知道怎么做了。
我所做的是创建一个 ObjectNBT
class 实现的 INBT
,并写了一些方法 get/set Object
这是我最后的 class 看起来像:
public class ObjectNBT implements INBT {
public Object object;
public ObjectNBT(Object object) {
this.object = object;
}
@Override
public void write(DataOutput output) throws IOException {
}
@Override
public byte getId() {
return 0;
}
@Override
public INBTType<?> func_225647_b_() {
return null;
}
@Override
public INBT copy() {
return null;
}
@Override
public ITextComponent toFormattedComponent(String indentation, int indentDepth) {
return new StringTextComponent(indentation + indentDepth);
}
}
随意复制和粘贴。
不,您不应该创建自己的 class。 这取决于你想要什么,但是有很多 classes,从 CompountNBT(有点像 Map),ListNBT(INBT 列表),到 BooleanNBT,StringNBT,IntegerNBT 等。 查看 INBT 的类型层次结构并选择您需要的。