diff options
author | Yang Xizhi <60341015+GlodBlock@users.noreply.github.com> | 2022-02-11 00:59:53 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-10 08:59:53 -0800 |
commit | a8af77fcd71449a38e954a1194c7b9648939f409 (patch) | |
tree | 1ff2a7e5f5c8656012c4a96100f2fbe371e2a17c /src/main/java | |
parent | 9dca8b4d7c829e84f2d230cebfdea1650a2d0c35 (diff) | |
download | GT5-Unofficial-a8af77fcd71449a38e954a1194c7b9648939f409.tar.gz GT5-Unofficial-a8af77fcd71449a38e954a1194c7b9648939f409.tar.bz2 GT5-Unofficial-a8af77fcd71449a38e954a1194c7b9648939f409.zip |
fix render crash when placing bw block in world (#90)
* fix render crash when placing bw block in world
Former-commit-id: e8cbb2997ef95a7ebf55e3e4dafcd67641fa9c35
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/com/github/bartimaeusnek/bartworks/client/renderer/BW_Renderer_Block_Ores.java | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/client/renderer/BW_Renderer_Block_Ores.java b/src/main/java/com/github/bartimaeusnek/bartworks/client/renderer/BW_Renderer_Block_Ores.java index 364529af99..aff0f71184 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/client/renderer/BW_Renderer_Block_Ores.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/client/renderer/BW_Renderer_Block_Ores.java @@ -26,7 +26,9 @@ import com.github.bartimaeusnek.bartworks.system.material.BW_MetaGenerated_Block import com.github.bartimaeusnek.bartworks.system.material.BW_MetaGenerated_Blocks; import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import cpw.mods.fml.client.registry.RenderingRegistry; +import gregtech.GT_Mod; import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.world.IBlockAccess; import org.lwjgl.opengl.GL11; @@ -37,16 +39,19 @@ import static gregtech.common.render.GT_Renderer_Block.renderNegativeZFacing; import static gregtech.common.render.GT_Renderer_Block.renderPositiveXFacing; import static gregtech.common.render.GT_Renderer_Block.renderPositiveYFacing; import static gregtech.common.render.GT_Renderer_Block.renderPositiveZFacing; -import static gregtech.common.render.GT_Renderer_Block.renderStandardBlock; public class BW_Renderer_Block_Ores implements ISimpleBlockRenderingHandler { public static BW_Renderer_Block_Ores INSTANCE = new BW_Renderer_Block_Ores(); public final int mRenderID = RenderingRegistry.getNextAvailableRenderId(); + public static final float blockMin = 0.0F; + public static final float blockMax = 1.0F; @Override public void renderInventoryBlock(Block aBlock, int aMeta, int modelId, RenderBlocks aRenderer) { BW_MetaGenerated_Block_TE tTileEntity = ((BW_MetaGenerated_Blocks)aBlock).getProperTileEntityForRendering(); tTileEntity.mMetaData = (short) aMeta; + aRenderer.enableAO = false; + aRenderer.useInventoryTint = true; aBlock.setBlockBoundsForItemRender(); aRenderer.setRenderBoundsFromBlock(aBlock); GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); @@ -57,14 +62,27 @@ public class BW_Renderer_Block_Ores implements ISimpleBlockRenderingHandler { renderPositiveZFacing(null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) 3), true); renderNegativeXFacing(null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) 4), true); renderPositiveXFacing(null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) 5), true); - aBlock.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); aRenderer.setRenderBoundsFromBlock(aBlock); + aBlock.setBlockBounds(blockMin, blockMin, blockMin, blockMax, blockMax, blockMax); GL11.glTranslatef(0.5F, 0.5F, 0.5F); + aRenderer.useInventoryTint = false; } @Override - public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { - return renderStandardBlock(world, x, y, z, block, renderer); + public boolean renderWorldBlock(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, int modelId, RenderBlocks aRenderer) { + BW_MetaGenerated_Block_TE tTileEntity = ((BW_MetaGenerated_Blocks)aBlock).getProperTileEntityForRendering(); + tTileEntity.mMetaData = ((BW_MetaGenerated_Block_TE) aWorld.getTileEntity(aX, aY, aZ)).mMetaData; + aRenderer.useInventoryTint = false; + aBlock.setBlockBounds(blockMin, blockMin, blockMin, blockMax, blockMax, blockMax); + aRenderer.enableAO = Minecraft.isAmbientOcclusionEnabled() && GT_Mod.gregtechproxy.mRenderTileAmbientOcclusion; + aRenderer.setRenderBoundsFromBlock(aBlock); + renderNegativeYFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tTileEntity.getTexture(aBlock, (byte) 0), true); + renderPositiveYFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tTileEntity.getTexture(aBlock, (byte) 1), true); + renderNegativeZFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tTileEntity.getTexture(aBlock, (byte) 2), true); + renderPositiveZFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tTileEntity.getTexture(aBlock, (byte) 3), true); + renderNegativeXFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tTileEntity.getTexture(aBlock, (byte) 4), true); + renderPositiveXFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tTileEntity.getTexture(aBlock, (byte) 5), true); + return true; } @Override |