我在每个单独的文件中设置纹理,这是设置它的非有效方式
this.setUnlocalizedName("ItemName");
this.setTextureName("MyModName:ItemName");
这种方式对我有意义,但没有用:
this.setUnlocalizedName("ItemName");
this.setTextureName(OtherClassName.MODID + ":" + this.getUnlocalizedName());
'OtherClassName.MODID'指的是另一个包含'MyModName'的类中的变量 this.getUnlocalizedName()获取已声明的UnlocalizedName,'ItemName'
有任何帮助吗?我不确定为什么它不起作用。
答案 0 :(得分:2)
getUnlocalizedName
有点奇怪 - 它返回你传递给setUnlocalizedName
的字符串,但带有“item”。在开始时。使用反混淆代码的乐趣......
这样可行:
String name = "ItemName";
this.setUnlocalizedName(name);
this.setTextureName(OtherClassName.MODID + ":" + name);
请注意,它的运行效率并不高,但如果更改项目名称,写入速度可能会更快。