Ph-苯
本帖最后由 Ph-苯 于 2021-2-21 02:25 编辑

物品NBT储存了一个物品ID,如何让该物品的材质渲染为NBT中的物品的材质?
已解决
  1. @Mixin(ItemModels.class)
  2. public abstract class MixinItemModels {
  3.         @Shadow
  4.         public abstract BakedModel getModel(ItemStack stack);

  5.         @Inject(at = { @At("HEAD") }, method = { "getModel" }, cancellable = true)
  6.         private void getModelCpp(ItemStack stack, CallbackInfoReturnable<BakedModel> info) {
  7.                 if (stack.isOf(CppItems.COMPRESSED_ITEM)) {
  8.                         info.setReturnValue(getModel(ItemStack.fromTag(stack.getOrCreateSubTag("item"))));
  9.                 }
  10.         }
  11. }
复制代码

_XuanFsant_
也许可以使用optifine和材质包
https://www.mcbbs.net/thread-782790-1-1.html

下一页 最后一页