本帖最后由 Ph-苯 于 2021-2-21 02:25 编辑
物品NBT储存了一个物品ID,如何让该物品的材质渲染为NBT中的物品的材质?
已解决
复制代码
物品NBT储存了一个物品ID,如何让该物品的材质渲染为NBT中的物品的材质?
已解决
- @Mixin(ItemModels.class)
- public abstract class MixinItemModels {
- @Shadow
- public abstract BakedModel getModel(ItemStack stack);
- @Inject(at = { @At("HEAD") }, method = { "getModel" }, cancellable = true)
- private void getModelCpp(ItemStack stack, CallbackInfoReturnable<BakedModel> info) {
- if (stack.isOf(CppItems.COMPRESSED_ITEM)) {
- info.setReturnValue(getModel(ItemStack.fromTag(stack.getOrCreateSubTag("item"))));
- }
- }
- }
也许可以使用optifine和材质包
https://www.mcbbs.net/thread-782790-1-1.html
https://www.mcbbs.net/thread-782790-1-1.html