--- a/net/minecraft/client/renderer/model/BlockModel.java +++ b/net/minecraft/client/renderer/model/BlockModel.java @@ -57,9 +57,10 @@ public BlockModel field_178315_d; @Nullable protected ResourceLocation field_178316_e; + public final net.minecraftforge.client.model.BlockModelConfiguration customData = new net.minecraftforge.client.model.BlockModelConfiguration(this); public static BlockModel func_178307_a(Reader p_178307_0_) { - return JSONUtils.func_193839_a(field_178319_a, p_178307_0_, BlockModel.class); + return JSONUtils.func_193839_a(net.minecraftforge.client.model.ModelLoaderRegistry.ExpandedBlockModelDeserializer.INSTANCE, p_178307_0_, BlockModel.class); } public static BlockModel func_178294_a(String p_178294_0_) { @@ -76,10 +77,15 @@ this.field_187968_k = p_i230056_7_; } + @Deprecated public List func_178298_a() { + if (customData.hasCustomGeometry()) return java.util.Collections.emptyList(); return this.field_178314_g.isEmpty() && this.field_178315_d != null ? this.field_178315_d.func_178298_a() : this.field_178314_g; } + @Nullable + public ResourceLocation getParentLocation() { return field_178316_e; } + public boolean func_178309_b() { return this.field_178315_d != null ? this.field_178315_d.func_178309_b() : this.field_178322_i; } @@ -100,6 +106,10 @@ return this.field_187968_k.isEmpty() ? ItemOverrideList.field_188022_a : new ItemOverrideList(p_217646_1_, p_217646_2_, p_217646_1_::func_209597_a, this.field_187968_k); } + public ItemOverrideList getOverrides(ModelBakery p_217646_1_, BlockModel p_217646_2_, Function textureGetter) { + return this.field_187968_k.isEmpty() ? ItemOverrideList.field_188022_a : new ItemOverrideList(p_217646_1_, p_217646_2_, p_217646_1_::func_209597_a, textureGetter, this.field_187968_k); + } + public Collection func_187965_e() { Set set = Sets.newHashSet(); @@ -143,6 +153,9 @@ Set set1 = Sets.newHashSet(this.func_228816_c_("particle")); + if(customData.hasCustomGeometry()) + set1.addAll(customData.getTextureDependencies(p_225614_1_, p_225614_2_)); + else for(BlockPart blockpart : this.func_178298_a()) { for(BlockPartFace blockpartface : blockpart.field_178240_c.values()) { Material material = this.func_228816_c_(blockpartface.field_178242_d); @@ -169,11 +182,17 @@ return set1; } + @Deprecated //Forge: Use Boolean variant public IBakedModel func_225613_a_(ModelBakery p_225613_1_, Function p_225613_2_, IModelTransform p_225613_3_, ResourceLocation p_225613_4_) { return this.func_228813_a_(p_225613_1_, this, p_225613_2_, p_225613_3_, p_225613_4_, true); } public IBakedModel func_228813_a_(ModelBakery p_228813_1_, BlockModel p_228813_2_, Function p_228813_3_, IModelTransform p_228813_4_, ResourceLocation p_228813_5_, boolean p_228813_6_) { + return net.minecraftforge.client.model.ModelLoaderRegistry.bakeHelper(this, p_228813_1_, p_228813_2_, p_228813_3_, p_228813_4_, p_228813_5_, p_228813_6_); + } + + @Deprecated //Forge: exposed for our callbacks only. Use the above function. + public IBakedModel bakeVanilla(ModelBakery p_228813_1_, BlockModel p_228813_2_, Function p_228813_3_, IModelTransform p_228813_4_, ResourceLocation p_228813_5_, boolean p_228813_6_) { TextureAtlasSprite textureatlassprite = p_228813_3_.apply(this.func_228816_c_("particle")); if (this.func_178310_f() == ModelBakery.field_177616_r) { return new BuiltInModel(this.func_181682_g(), this.func_217646_a(p_228813_1_, p_228813_2_), textureatlassprite, this.func_230176_c_().func_230178_a_()); @@ -200,6 +219,10 @@ return field_217647_g.func_228824_a_(p_228812_0_.field_178241_a, p_228812_0_.field_178239_b, p_228812_1_, p_228812_2_, p_228812_3_, p_228812_4_, p_228812_0_.field_178237_d, p_228812_0_.field_178238_e, p_228812_5_); } + public static BakedQuad makeBakedQuad(BlockPart p_228812_0_, BlockPartFace p_228812_1_, TextureAtlasSprite p_228812_2_, Direction p_228812_3_, IModelTransform p_228812_4_, ResourceLocation p_228812_5_) { + return func_228812_a_(p_228812_0_, p_228812_1_, p_228812_2_, p_228812_3_, p_228812_4_, p_228812_5_); + } + public boolean func_178300_b(String p_178300_1_) { return !MissingTextureSprite.func_195675_b().equals(this.func_228816_c_(p_178300_1_).func_229313_b_()); }