TESRs registering in preinit don't break pistons anymore. Fixes #2298.
This commit is contained in:
parent
09e9a181ee
commit
db3e039b31
2 changed files with 18 additions and 2 deletions
|
@ -0,0 +1,15 @@
|
||||||
|
--- ../src-base/minecraft/net/minecraft/client/renderer/tileentity/TileEntityPistonRenderer.java
|
||||||
|
+++ ../src-work/minecraft/net/minecraft/client/renderer/tileentity/TileEntityPistonRenderer.java
|
||||||
|
@@ -23,10 +23,11 @@
|
||||||
|
@SideOnly(Side.CLIENT)
|
||||||
|
public class TileEntityPistonRenderer extends TileEntitySpecialRenderer<TileEntityPiston>
|
||||||
|
{
|
||||||
|
- private final BlockRendererDispatcher field_178462_c = Minecraft.func_71410_x().func_175602_ab();
|
||||||
|
+ private BlockRendererDispatcher field_178462_c;
|
||||||
|
|
||||||
|
public void func_180535_a(TileEntityPiston p_180535_1_, double p_180535_2_, double p_180535_4_, double p_180535_6_, float p_180535_8_, int p_180535_9_)
|
||||||
|
{
|
||||||
|
+ if(field_178462_c == null) field_178462_c = Minecraft.func_71410_x().func_175602_ab();
|
||||||
|
BlockPos blockpos = p_180535_1_.func_174877_v();
|
||||||
|
IBlockState iblockstate = p_180535_1_.func_174927_b();
|
||||||
|
Block block = iblockstate.func_177230_c();
|
|
@ -150,13 +150,13 @@ public class ModelAnimationDebug
|
||||||
super.preInit(event);
|
super.preInit(event);
|
||||||
B3DLoader.instance.addDomain(MODID);
|
B3DLoader.instance.addDomain(MODID);
|
||||||
ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(GameRegistry.findBlock(MODID, blockName)), 0, new ModelResourceLocation(MODID.toLowerCase() + ":" + blockName, "inventory"));
|
ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(GameRegistry.findBlock(MODID, blockName)), 0, new ModelResourceLocation(MODID.toLowerCase() + ":" + blockName, "inventory"));
|
||||||
|
ClientRegistry.bindTileEntitySpecialRenderer(Chest.class, ChestRenderer.instance);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void init(FMLInitializationEvent event)
|
public void init(FMLInitializationEvent event)
|
||||||
{
|
{
|
||||||
super.init(event);
|
super.init(event);
|
||||||
ClientRegistry.bindTileEntitySpecialRenderer(Chest.class, ChestRenderer.instance);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -239,10 +239,11 @@ public class ModelAnimationDebug
|
||||||
public static ChestRenderer instance = new ChestRenderer();
|
public static ChestRenderer instance = new ChestRenderer();
|
||||||
private ChestRenderer() {}
|
private ChestRenderer() {}
|
||||||
|
|
||||||
private final BlockRendererDispatcher blockRenderer = Minecraft.getMinecraft().getBlockRendererDispatcher();
|
private BlockRendererDispatcher blockRenderer;
|
||||||
|
|
||||||
public void renderTileEntityAt(Chest te, double x, double y, double z, float partialTick, int breakStage)
|
public void renderTileEntityAt(Chest te, double x, double y, double z, float partialTick, int breakStage)
|
||||||
{
|
{
|
||||||
|
if(blockRenderer == null) blockRenderer = Minecraft.getMinecraft().getBlockRendererDispatcher();
|
||||||
IBlockState state = te.getWorld().getBlockState(te.getPos());
|
IBlockState state = te.getWorld().getBlockState(te.getPos());
|
||||||
state = state.withProperty(STATIC, false);
|
state = state.withProperty(STATIC, false);
|
||||||
IBakedModel model = this.blockRenderer.getBlockModelShapes().getModelForState(state);
|
IBakedModel model = this.blockRenderer.getBlockModelShapes().getModelForState(state);
|
||||||
|
|
Loading…
Reference in a new issue