diff options
author | Jason Mitchell <mitchej@gmail.com> | 2023-01-30 10:56:42 -0800 |
---|---|---|
committer | Jason Mitchell <mitchej@gmail.com> | 2023-01-30 10:56:42 -0800 |
commit | 0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a (patch) | |
tree | 1e2c649f3a6ce3f6b2babd0098a5f4819e9cd0b6 /src/main/java/gregtech/common/render | |
parent | f8cc82edeb9810c45cba762d733a2c909a302faa (diff) | |
download | GT5-Unofficial-0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a.tar.gz GT5-Unofficial-0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a.tar.bz2 GT5-Unofficial-0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a.zip |
[ci skip] spotlessApply with the new settings
Diffstat (limited to 'src/main/java/gregtech/common/render')
27 files changed, 489 insertions, 424 deletions
diff --git a/src/main/java/gregtech/common/render/CosmicItemRendererGT.java b/src/main/java/gregtech/common/render/CosmicItemRendererGT.java index d8539a6f9a..cea0fd684f 100644 --- a/src/main/java/gregtech/common/render/CosmicItemRendererGT.java +++ b/src/main/java/gregtech/common/render/CosmicItemRendererGT.java @@ -1,12 +1,14 @@ package gregtech.common.render; -import fox.spiteful.avaritia.render.CosmicItemRenderer; import java.util.*; + import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.client.MinecraftForgeClient; import net.minecraftforge.oredict.OreDictionary; +import fox.spiteful.avaritia.render.CosmicItemRenderer; + public class CosmicItemRendererGT extends CosmicItemRenderer { private static CosmicItemRendererGT sInstance = null; diff --git a/src/main/java/gregtech/common/render/GT_CapeRenderer.java b/src/main/java/gregtech/common/render/GT_CapeRenderer.java index 2d946efd04..1a6d44ca5b 100644 --- a/src/main/java/gregtech/common/render/GT_CapeRenderer.java +++ b/src/main/java/gregtech/common/render/GT_CapeRenderer.java @@ -1,9 +1,7 @@ package gregtech.common.render; -import gregtech.api.enums.GT_Values; -import gregtech.api.util.GT_Log; -import gregtech.api.util.GT_Utility; import java.util.Collection; + import net.minecraft.client.entity.AbstractClientPlayer; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.renderer.entity.RenderManager; @@ -12,21 +10,24 @@ import net.minecraft.potion.Potion; import net.minecraft.util.MathHelper; import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.event.RenderPlayerEvent; + import org.lwjgl.opengl.GL11; +import gregtech.api.enums.GT_Values; +import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_Utility; + public class GT_CapeRenderer extends RenderPlayer { - private final ResourceLocation[] mCapes = { - new ResourceLocation("gregtech:textures/BrainTechCape.png"), - new ResourceLocation("gregtech:textures/GregTechCape.png"), - new ResourceLocation("gregtech:textures/MrBrainCape.png"), - new ResourceLocation("gregtech:textures/GregoriusCape.png"), - new ResourceLocation("gregtech:textures/DonorCape.png"), - new ResourceLocation("gregtech:textures/DevCape.png"), - new ResourceLocation("gregtech:textures/Steam.png"), - new ResourceLocation("gregtech:textures/Titanium.png"), - new ResourceLocation("gregtech:textures/Neutronium.png"), - new ResourceLocation("gregtech:textures/Stargate.png") - }; + + private final ResourceLocation[] mCapes = { new ResourceLocation("gregtech:textures/BrainTechCape.png"), + new ResourceLocation("gregtech:textures/GregTechCape.png"), + new ResourceLocation("gregtech:textures/MrBrainCape.png"), + new ResourceLocation("gregtech:textures/GregoriusCape.png"), + new ResourceLocation("gregtech:textures/DonorCape.png"), + new ResourceLocation("gregtech:textures/DevCape.png"), new ResourceLocation("gregtech:textures/Steam.png"), + new ResourceLocation("gregtech:textures/Titanium.png"), + new ResourceLocation("gregtech:textures/Neutronium.png"), + new ResourceLocation("gregtech:textures/Stargate.png") }; private final Collection<String> mCapeList; public GT_CapeRenderer(Collection<String> aCapeList) { @@ -84,14 +85,11 @@ public class GT_CapeRenderer extends RenderPlayer { bindTexture(tResource); GL11.glPushMatrix(); GL11.glTranslatef(0.0F, 0.0F, 0.125F); - double d0 = aPlayer.field_71091_bM - + (aPlayer.field_71094_bP - aPlayer.field_71091_bM) * aPartialTicks + double d0 = aPlayer.field_71091_bM + (aPlayer.field_71094_bP - aPlayer.field_71091_bM) * aPartialTicks - (aPlayer.prevPosX + (aPlayer.posX - aPlayer.prevPosX) * aPartialTicks); - double d1 = aPlayer.field_71096_bN - + (aPlayer.field_71095_bQ - aPlayer.field_71096_bN) * aPartialTicks + double d1 = aPlayer.field_71096_bN + (aPlayer.field_71095_bQ - aPlayer.field_71096_bN) * aPartialTicks - (aPlayer.prevPosY + (aPlayer.posY - aPlayer.prevPosY) * aPartialTicks); - double d2 = aPlayer.field_71097_bO - + (aPlayer.field_71085_bR - aPlayer.field_71097_bO) * aPartialTicks + double d2 = aPlayer.field_71097_bO + (aPlayer.field_71085_bR - aPlayer.field_71097_bO) * aPartialTicks - (aPlayer.prevPosZ + (aPlayer.posZ - aPlayer.prevPosZ) * aPartialTicks); float f6 = aPlayer.prevRenderYawOffset + (aPlayer.renderYawOffset - aPlayer.prevRenderYawOffset) * aPartialTicks; @@ -110,9 +108,9 @@ public class GT_CapeRenderer extends RenderPlayer { f8 = 0.0F; } float f10 = aPlayer.prevCameraYaw + (aPlayer.cameraYaw - aPlayer.prevCameraYaw) * aPartialTicks; - f7 += MathHelper.sin((aPlayer.prevDistanceWalkedModified - + (aPlayer.distanceWalkedModified - aPlayer.prevDistanceWalkedModified) - * aPartialTicks) + f7 += MathHelper.sin( + (aPlayer.prevDistanceWalkedModified + + (aPlayer.distanceWalkedModified - aPlayer.prevDistanceWalkedModified) * aPartialTicks) * 6.0F) * 32.0F * f10; diff --git a/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java b/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java index 2f6c691253..f0df8277ee 100644 --- a/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java +++ b/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java @@ -1,14 +1,16 @@ package gregtech.common.render; -import gregtech.api.interfaces.IBlockContainer; -import gregtech.api.interfaces.ITexture; -import gregtech.api.util.LightingHelper; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.util.IIcon; import net.minecraftforge.common.util.ForgeDirection; +import gregtech.api.interfaces.IBlockContainer; +import gregtech.api.interfaces.ITexture; +import gregtech.api.util.LightingHelper; + public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, IBlockContainer { + private final Block mBlock; private final byte mSide, mMeta; @@ -34,8 +36,7 @@ public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, I final IIcon aIcon = getIcon(ForgeDirection.EAST.ordinal()); aRenderer.field_152631_f = true; startDrawingQuads(aRenderer, 1.0f, 0.0f, 0.0f); - new LightingHelper(aRenderer) - .setupLightingXPos(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingXPos(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.EAST.ordinal(), 0xffffff); aRenderer.renderFaceXPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); @@ -46,8 +47,7 @@ public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, I public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, -1.0f, 0.0f, 0.0f); final IIcon aIcon = getIcon(ForgeDirection.WEST.ordinal()); - new LightingHelper(aRenderer) - .setupLightingXNeg(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingXNeg(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.WEST.ordinal(), 0xffffff); aRenderer.renderFaceXNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); @@ -57,8 +57,7 @@ public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, I public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, 0.0f, 1.0f, 0.0f); final IIcon aIcon = getIcon(ForgeDirection.UP.ordinal()); - new LightingHelper(aRenderer) - .setupLightingYPos(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingYPos(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.UP.ordinal(), 0xffffff); aRenderer.renderFaceYPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); @@ -68,8 +67,7 @@ public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, I public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, 0.0f, -1.0f, 0.0f); final IIcon aIcon = getIcon(ForgeDirection.DOWN.ordinal()); - new LightingHelper(aRenderer) - .setupLightingYNeg(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingYNeg(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.DOWN.ordinal(), 0xffffff); aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); @@ -79,8 +77,7 @@ public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, I public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, 0.0f, 0.0f, 1.0f); final IIcon aIcon = getIcon(ForgeDirection.SOUTH.ordinal()); - new LightingHelper(aRenderer) - .setupLightingZPos(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingZPos(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.SOUTH.ordinal(), 0xffffff); aRenderer.renderFaceZPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); @@ -91,8 +88,7 @@ public class GT_CopiedBlockTexture extends GT_TextureBase implements ITexture, I startDrawingQuads(aRenderer, 0.0f, 0.0f, -1.0f); final IIcon aIcon = getIcon(ForgeDirection.NORTH.ordinal()); aRenderer.field_152631_f = true; - new LightingHelper(aRenderer) - .setupLightingZNeg(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingZNeg(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.NORTH.ordinal(), 0xffffff); aRenderer.renderFaceZNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); diff --git a/src/main/java/gregtech/common/render/GT_CopiedCTMBlockTexture.java b/src/main/java/gregtech/common/render/GT_CopiedCTMBlockTexture.java index 5b9ed1bb29..c96c57398d 100644 --- a/src/main/java/gregtech/common/render/GT_CopiedCTMBlockTexture.java +++ b/src/main/java/gregtech/common/render/GT_CopiedCTMBlockTexture.java @@ -1,15 +1,17 @@ package gregtech.common.render; -import gregtech.api.interfaces.IBlockContainer; -import gregtech.api.interfaces.ITexture; -import gregtech.api.util.GT_RenderingWorld; -import gregtech.api.util.LightingHelper; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.util.IIcon; import net.minecraftforge.common.util.ForgeDirection; +import gregtech.api.interfaces.IBlockContainer; +import gregtech.api.interfaces.ITexture; +import gregtech.api.util.GT_RenderingWorld; +import gregtech.api.util.LightingHelper; + class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBlockContainer { + private final Block mBlock; private final byte mSide, mMeta; @@ -40,10 +42,9 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc final IIcon aIcon = getIcon(ForgeDirection.EAST.ordinal(), aX, aY, aZ, aRenderer); aRenderer.field_152631_f = true; startDrawingQuads(aRenderer, 1.0f, 0.0f, 0.0f); - new LightingHelper(aRenderer) - .setupLightingXPos(aBlock, aX, aY, aZ) - .setupColor( - ForgeDirection.EAST.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); + new LightingHelper(aRenderer).setupLightingXPos(aBlock, aX, aY, aZ).setupColor( + ForgeDirection.EAST.ordinal(), + mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceXPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); aRenderer.field_152631_f = false; @@ -53,10 +54,9 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, -1.0f, 0.0f, 0.0f); final IIcon aIcon = getIcon(ForgeDirection.WEST.ordinal(), aX, aY, aZ, aRenderer); - new LightingHelper(aRenderer) - .setupLightingXNeg(aBlock, aX, aY, aZ) - .setupColor( - ForgeDirection.WEST.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); + new LightingHelper(aRenderer).setupLightingXNeg(aBlock, aX, aY, aZ).setupColor( + ForgeDirection.WEST.ordinal(), + mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceXNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); } @@ -65,8 +65,7 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, 0.0f, 1.0f, 0.0f); final IIcon aIcon = getIcon(ForgeDirection.UP.ordinal(), aX, aY, aZ, aRenderer); - new LightingHelper(aRenderer) - .setupLightingYPos(aBlock, aX, aY, aZ) + new LightingHelper(aRenderer).setupLightingYPos(aBlock, aX, aY, aZ) .setupColor(ForgeDirection.UP.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceYPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); @@ -76,10 +75,9 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, 0.0f, -1.0f, 0.0f); final IIcon aIcon = getIcon(ForgeDirection.DOWN.ordinal(), aX, aY, aZ, aRenderer); - new LightingHelper(aRenderer) - .setupLightingYNeg(aBlock, aX, aY, aZ) - .setupColor( - ForgeDirection.DOWN.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); + new LightingHelper(aRenderer).setupLightingYNeg(aBlock, aX, aY, aZ).setupColor( + ForgeDirection.DOWN.ordinal(), + mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); } @@ -88,10 +86,9 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { startDrawingQuads(aRenderer, 0.0f, 0.0f, 1.0f); final IIcon aIcon = getIcon(ForgeDirection.SOUTH.ordinal(), aX, aY, aZ, aRenderer); - new LightingHelper(aRenderer) - .setupLightingZPos(aBlock, aX, aY, aZ) - .setupColor( - ForgeDirection.SOUTH.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); + new LightingHelper(aRenderer).setupLightingZPos(aBlock, aX, aY, aZ).setupColor( + ForgeDirection.SOUTH.ordinal(), + mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceZPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); } @@ -101,10 +98,9 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc startDrawingQuads(aRenderer, 0.0f, 0.0f, -1.0f); final IIcon aIcon = getIcon(ForgeDirection.NORTH.ordinal(), aX, aY, aZ, aRenderer); aRenderer.field_152631_f = true; - new LightingHelper(aRenderer) - .setupLightingZNeg(aBlock, aX, aY, aZ) - .setupColor( - ForgeDirection.NORTH.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); + new LightingHelper(aRenderer).setupLightingZNeg(aBlock, aX, aY, aZ).setupColor( + ForgeDirection.NORTH.ordinal(), + mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceZNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); aRenderer.field_152631_f = false; diff --git a/src/main/java/gregtech/common/render/GT_FlaskRenderer.java b/src/main/java/gregtech/common/render/GT_FlaskRenderer.java index 18fb47cffc..3523b0f4b6 100644 --- a/src/main/java/gregtech/common/render/GT_FlaskRenderer.java +++ b/src/main/java/gregtech/common/render/GT_FlaskRenderer.java @@ -1,10 +1,5 @@ package gregtech.common.render; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import gregtech.api.enums.ItemList; -import gregtech.common.items.GT_VolumetricFlask; -import ic2.core.util.DrawUtil; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; @@ -14,10 +9,18 @@ import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; import net.minecraftforge.fluids.FluidStack; + import org.lwjgl.opengl.GL11; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.ItemList; +import gregtech.common.items.GT_VolumetricFlask; +import ic2.core.util.DrawUtil; + @SideOnly(Side.CLIENT) public final class GT_FlaskRenderer implements IItemRenderer { + public GT_FlaskRenderer() { MinecraftForgeClient.registerItemRenderer(ItemList.VOLUMETRIC_FLASK.getItem(), this); } diff --git a/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java b/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java index caec5e1581..8862f41861 100644 --- a/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java +++ b/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java @@ -1,11 +1,5 @@ package gregtech.common.render; -import appeng.util.ReadableNumberConverter; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.common.items.GT_FluidDisplayItem; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.renderer.OpenGlHelper; @@ -14,8 +8,16 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; + import org.lwjgl.opengl.GL11; +import appeng.util.ReadableNumberConverter; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.common.items.GT_FluidDisplayItem; + @SideOnly(Side.CLIENT) public class GT_FluidDisplayStackRenderer implements IItemRenderer { @@ -85,7 +87,11 @@ public class GT_FluidDisplayStackRenderer implements IItemRenderer { GL11.glScalef(smallTextScale, smallTextScale, 1.0f); fontRender.drawString( - amountString, 0, (int) (16 / smallTextScale) - fontRender.FONT_HEIGHT + 1, 0xFFFFFF, true); + amountString, + 0, + (int) (16 / smallTextScale) - fontRender.FONT_HEIGHT + 1, + 0xFFFFFF, + true); GL11.glPopMatrix(); GL11.glDisable(GL11.GL_ALPHA_TEST); } diff --git a/src/main/java/gregtech/common/render/GT_IconFlipped.java b/src/main/java/gregtech/common/render/GT_IconFlipped.java index 7cd44a7e70..8258e74ffa 100644 --- a/src/main/java/gregtech/common/render/GT_IconFlipped.java +++ b/src/main/java/gregtech/common/render/GT_IconFlipped.java @@ -1,11 +1,13 @@ package gregtech.common.render; +import net.minecraft.util.IIcon; + import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.util.IIcon; @SideOnly(Side.CLIENT) public class GT_IconFlipped implements IIcon { + private final IIcon baseIcon; private final boolean flipU; private final boolean flipV; diff --git a/src/main/java/gregtech/common/render/GT_MetaGenerated_Tool_Renderer.java b/src/main/java/gregtech/common/render/GT_MetaGenerated_Tool_Renderer.java index 52e99f4539..1f7e72387a 100644 --- a/src/main/java/gregtech/common/render/GT_MetaGenerated_Tool_Renderer.java +++ b/src/main/java/gregtech/common/render/GT_MetaGenerated_Tool_Renderer.java @@ -1,10 +1,5 @@ package gregtech.common.render; -import gregtech.api.enums.Materials; -import gregtech.api.interfaces.IIconContainer; -import gregtech.api.interfaces.IToolStats; -import gregtech.api.items.GT_MetaGenerated_Tool; -import gregtech.api.util.GT_Utility; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; @@ -13,9 +8,17 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; + import org.lwjgl.opengl.GL11; +import gregtech.api.enums.Materials; +import gregtech.api.interfaces.IIconContainer; +import gregtech.api.interfaces.IToolStats; +import gregtech.api.items.GT_MetaGenerated_Tool; +import gregtech.api.util.GT_Utility; + public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { + public GT_MetaGenerated_Tool_Renderer() { for (GT_MetaGenerated_Tool tItem : GT_MetaGenerated_Tool.sInstances.values()) { if (tItem != null) { @@ -36,8 +39,8 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { } @Override - public boolean shouldUseRenderHelper( - IItemRenderer.ItemRenderType aType, ItemStack aStack, IItemRenderer.ItemRendererHelper aHelper) { + public boolean shouldUseRenderHelper(IItemRenderer.ItemRenderType aType, ItemStack aStack, + IItemRenderer.ItemRendererHelper aHelper) { if (GT_Utility.isStackInvalid(aStack)) { return false; } @@ -157,9 +160,8 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { } else if (tDamage >= tMaxDamage) { aIcon = gregtech.api.enums.Textures.ItemIcons.DURABILITY_BAR[0]; } else { - aIcon = gregtech.api.enums.Textures.ItemIcons.DURABILITY_BAR[ - ((int) java.lang.Math.max( - 0L, java.lang.Math.min(7L, (tMaxDamage - tDamage) * 8L / tMaxDamage)))]; + aIcon = gregtech.api.enums.Textures.ItemIcons.DURABILITY_BAR[((int) java.lang.Math + .max(0L, java.lang.Math.min(7L, (tMaxDamage - tDamage) * 8L / tMaxDamage)))]; } if (aIcon != null) { IIcon tIcon = aIcon.getIcon(); @@ -207,10 +209,8 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { } else if (tCharge >= tStats[0]) { aIcon = gregtech.api.enums.Textures.ItemIcons.ENERGY_BAR[8]; } else { - aIcon = gregtech.api.enums.Textures.ItemIcons.ENERGY_BAR[ - (7 - - (int) java.lang.Math.max( - 0L, java.lang.Math.min(6L, (tStats[0] - tCharge) * 7L / tStats[0])))]; + aIcon = gregtech.api.enums.Textures.ItemIcons.ENERGY_BAR[(7 - (int) java.lang.Math + .max(0L, java.lang.Math.min(6L, (tStats[0] - tCharge) * 7L / tStats[0])))]; } } else { aIcon = null; diff --git a/src/main/java/gregtech/common/render/GT_MultiTexture.java b/src/main/java/gregtech/common/render/GT_MultiTexture.java index df5251f784..d3cff271cb 100644 --- a/src/main/java/gregtech/common/render/GT_MultiTexture.java +++ b/src/main/java/gregtech/common/render/GT_MultiTexture.java @@ -1,15 +1,21 @@ package gregtech.common.render; -import gregtech.GT_Mod; -import gregtech.api.interfaces.ITexture; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; +import gregtech.GT_Mod; +import gregtech.api.interfaces.ITexture; + /** - * <p>Lets Multiple ITextures Render overlay over each other.<</p> - * <p>I should have done this much earlier...</p> + * <p> + * Lets Multiple ITextures Render overlay over each other.< + * </p> + * <p> + * I should have done this much earlier... + * </p> */ public class GT_MultiTexture extends GT_TextureBase implements ITexture { + protected final ITexture[] mTextures; public static GT_MultiTexture get(ITexture... aTextures) { diff --git a/src/main/java/gregtech/common/render/GT_PollutionRenderer.java b/src/main/java/gregtech/common/render/GT_PollutionRenderer.java index 99689a535d..ea8d5d1310 100644 --- a/src/main/java/gregtech/common/render/GT_PollutionRenderer.java +++ b/src/main/java/gregtech/common/render/GT_PollutionRenderer.java @@ -1,14 +1,5 @@ package gregtech.common.render; -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.eventhandler.EventPriority; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import cpw.mods.fml.common.gameevent.TickEvent; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import gregtech.GT_Mod; -import gregtech.common.entities.GT_EntityFXPollution; -import gregtech.common.misc.GT_ClientPollutionMap; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.Minecraft; @@ -21,10 +12,22 @@ import net.minecraft.world.ChunkCoordIntPair; import net.minecraft.world.World; import net.minecraftforge.client.event.EntityViewRenderEvent; import net.minecraftforge.event.world.WorldEvent; + import org.lwjgl.opengl.GL11; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.eventhandler.EventPriority; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import cpw.mods.fml.common.gameevent.TickEvent; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.GT_Mod; +import gregtech.common.entities.GT_EntityFXPollution; +import gregtech.common.misc.GT_ClientPollutionMap; + @SideOnly(Side.CLIENT) public class GT_PollutionRenderer { + private static GT_ClientPollutionMap pollutionMap; private static int playerPollution = 0; @@ -40,11 +43,11 @@ public class GT_PollutionRenderer { // jump from linear to exponential fog. x*FOG_MAX_AT_POLLUTION+FOG_START_AT_POLLUTION private static final double FOG_START_EXP_RATIO = 0.02D; - private static final float[] fogColor = {0.3f, 0.25f, 0.1f}; - private static final short[] grassColor = {230, 180, 40}; - private static final short[] leavesColor = {160, 80, 15}; - private static final short[] liquidColor = {160, 200, 10}; - private static final short[] foliageColor = {160, 80, 15}; + private static final float[] fogColor = { 0.3f, 0.25f, 0.1f }; + private static final short[] grassColor = { 230, 180, 40 }; + private static final short[] leavesColor = { 160, 80, 15 }; + private static final short[] liquidColor = { 160, 200, 10 }; + private static final short[] foliageColor = { 160, 80, 15 }; // TODO need to soft update some blocks, grass and leaves does more often than liquid it looks like. @@ -128,7 +131,8 @@ public class GT_PollutionRenderer { if (!GT_Mod.gregtechproxy.mRenderPollutionFog) return; if ((!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) - || (fogIntensityLastTick <= 0 && fogIntensityLastTick >= FOG_START_EXP_RATIO)) return; + || (fogIntensityLastTick <= 0 && fogIntensityLastTick >= FOG_START_EXP_RATIO)) + return; if (event.fogMode == 0) { double v = 1 - fogIntensityLastTick / FOG_START_EXP_RATIO; @@ -146,10 +150,10 @@ public class GT_PollutionRenderer { if (!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) return; - if (event.entity.isPotionActive(Potion.blindness) - || (fogIntensityLastTick < FOG_START_EXP_RATIO) + if (event.entity.isPotionActive(Potion.blindness) || (fogIntensityLastTick < FOG_START_EXP_RATIO) || event.block.getMaterial() == Material.water - || event.block.getMaterial() == Material.lava) return; + || event.block.getMaterial() == Material.lava) + return; GL11.glFogi(GL11.GL_FOG_MODE, GL11.GL_EXP2); event.density = (float) Math.pow(fogIntensityLastTick - FOG_START_EXP_RATIO, .75F) / 5 + 0.01F; @@ -185,15 +189,13 @@ public class GT_PollutionRenderer { } else if (DEBUG) { drawPollution("Intensity: " + (fogIntensityLastTick * 10000), 0); drawPollution( - "Pollution: " - + pollutionMap.getPollution( - Minecraft.getMinecraft().thePlayer.lastTickPosX, - Minecraft.getMinecraft().thePlayer.lastTickPosZ), + "Pollution: " + pollutionMap.getPollution( + Minecraft.getMinecraft().thePlayer.lastTickPosX, + Minecraft.getMinecraft().thePlayer.lastTickPosZ), 20); drawPollution( - "Density: " - + ((float) (Math.pow(fogIntensityLastTick - FOG_START_EXP_RATIO, .75F) / 5 + 0.01F) - * 10000), + "Density: " + ((float) (Math.pow(fogIntensityLastTick - FOG_START_EXP_RATIO, .75F) / 5 + 0.01F) + * 10000), 40); } } diff --git a/src/main/java/gregtech/common/render/GT_RenderUtil.java b/src/main/java/gregtech/common/render/GT_RenderUtil.java index c4def72fd1..be0e0ac0b6 100644 --- a/src/main/java/gregtech/common/render/GT_RenderUtil.java +++ b/src/main/java/gregtech/common/render/GT_RenderUtil.java @@ -1,13 +1,15 @@ package gregtech.common.render; -import gregtech.api.items.GT_MetaGenerated_Item; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.Tessellator; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; + import org.lwjgl.opengl.GL11; +import gregtech.api.items.GT_MetaGenerated_Item; + public class GT_RenderUtil { public static void colorGTItem(ItemStack aStack) { @@ -21,8 +23,8 @@ public class GT_RenderUtil { } } - public static void renderBlockIcon( - RenderBlocks aRenderer, Block aBlock, double aX, double aY, double aZ, IIcon aIcon, byte aSide) { + public static void renderBlockIcon(RenderBlocks aRenderer, Block aBlock, double aX, double aY, double aZ, + IIcon aIcon, byte aSide) { switch (aSide) { case 0: aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, aIcon); @@ -49,16 +51,8 @@ public class GT_RenderUtil { renderItemIcon(icon, 0.0D, 0.0D, size, size, z, nx, ny, nz); } - public static void renderItemIcon( - IIcon icon, - double xStart, - double yStart, - double xEnd, - double yEnd, - double z, - float nx, - float ny, - float nz) { + public static void renderItemIcon(IIcon icon, double xStart, double yStart, double xEnd, double yEnd, double z, + float nx, float ny, float nz) { if (icon == null) { return; } diff --git a/src/main/java/gregtech/common/render/GT_RenderedTexture.java b/src/main/java/gregtech/common/render/GT_RenderedTexture.java index 3c12c9589d..5346a101d1 100644 --- a/src/main/java/gregtech/common/render/GT_RenderedTexture.java +++ b/src/main/java/gregtech/common/render/GT_RenderedTexture.java @@ -2,11 +2,22 @@ package gregtech.common.render; import static gregtech.api.util.LightingHelper.MAX_BRIGHTNESS; +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + import com.gtnewhorizon.structurelib.alignment.IAlignment; import com.gtnewhorizon.structurelib.alignment.IAlignmentProvider; import com.gtnewhorizon.structurelib.alignment.enumerable.ExtendedFacing; import com.gtnewhorizon.structurelib.alignment.enumerable.Flip; import com.gtnewhorizon.structurelib.alignment.enumerable.Rotation; + import gregtech.GT_Mod; import gregtech.api.interfaces.IColorModulationContainer; import gregtech.api.interfaces.IIconContainer; @@ -14,30 +25,17 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.util.LightingHelper; -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.IIcon; -import net.minecraft.world.World; -import net.minecraftforge.common.util.ForgeDirection; public class GT_RenderedTexture extends GT_TextureBase implements ITexture, IColorModulationContainer { + protected final IIconContainer mIconContainer; private final short[] mRGBa; private final boolean glow; private final boolean stdOrient; private final boolean useExtFacing; - protected GT_RenderedTexture( - IIconContainer aIcon, - short[] aRGBa, - boolean allowAlpha, - boolean glow, - boolean stdOrient, - boolean extFacing) { + protected GT_RenderedTexture(IIconContainer aIcon, short[] aRGBa, boolean allowAlpha, boolean glow, + boolean stdOrient, boolean extFacing) { if (aRGBa.length != 4) throw new IllegalArgumentException("RGBa doesn't have 4 Values @ GT_RenderedTexture"); mIconContainer = aIcon; mRGBa = aRGBa; @@ -214,8 +212,8 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol /** * Renders the given texture to the bottom face of the block. Args: block, x, y, z, texture */ - protected void renderFaceYNeg( - RenderBlocks aRenderer, double x, double y, double z, IIcon icon, ExtendedFacing extendedFacing) { + protected void renderFaceYNeg(RenderBlocks aRenderer, double x, double y, double z, IIcon icon, + ExtendedFacing extendedFacing) { switch (useExtFacing ? extendedFacing.getRotation() : Rotation.NORMAL) { case COUNTER_CLOCKWISE: @@ -240,7 +238,9 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped( - icon, aFlip.isHorizontallyFlipped() ^ !stdOrient, aFlip.isVerticallyFliped()) + icon, + aFlip.isHorizontallyFlipped() ^ !stdOrient, + aFlip.isVerticallyFliped()) : new GT_IconFlipped(icon, !stdOrient, false)); aRenderer.uvRotateBottom = 0; } @@ -248,8 +248,8 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol /** * Renders the given texture to the top face of the block. Args: block, x, y, z, texture */ - protected void renderFaceYPos( - RenderBlocks aRenderer, double x, double y, double z, IIcon icon, ExtendedFacing extendedFacing) { + protected void renderFaceYPos(RenderBlocks aRenderer, double x, double y, double z, IIcon icon, + ExtendedFacing extendedFacing) { switch (useExtFacing ? extendedFacing.getRotation() : Rotation.NORMAL) { case COUNTER_CLOCKWISE: @@ -279,10 +279,10 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } /** - * Renders the given texture to the north (z-negative) face of the block. Args: block, x, y, z, texture + * Renders the given texture to the north (z-negative) face of the block. Args: block, x, y, z, texture */ - protected void renderFaceZNeg( - RenderBlocks aRenderer, double x, double y, double z, IIcon icon, ExtendedFacing extendedFacing) { + protected void renderFaceZNeg(RenderBlocks aRenderer, double x, double y, double z, IIcon icon, + ExtendedFacing extendedFacing) { aRenderer.field_152631_f = true; // **NOT A BUG**: aRenderer.uvRotateEast REALLY CONTROLS THE ROTATION OF THE NORTH SIDE switch (useExtFacing ? extendedFacing.getRotation() : Rotation.NORMAL) { @@ -314,10 +314,10 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } /** - * Renders the given texture to the south (z-positive) face of the block. Args: block, x, y, z, texture + * Renders the given texture to the south (z-positive) face of the block. Args: block, x, y, z, texture */ - protected void renderFaceZPos( - RenderBlocks aRenderer, double x, double y, double z, IIcon icon, ExtendedFacing extendedFacing) { + protected void renderFaceZPos(RenderBlocks aRenderer, double x, double y, double z, IIcon icon, + ExtendedFacing extendedFacing) { // **NOT A BUG**: aRenderer.uvRotateWest REALLY CONTROLS THE ROTATION OF THE SOUTH SIDE switch (useExtFacing ? extendedFacing.getRotation() : Rotation.NORMAL) { case COUNTER_CLOCKWISE: @@ -347,10 +347,10 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } /** - * Renders the given texture to the west (x-negative) face of the block. Args: block, x, y, z, texture + * Renders the given texture to the west (x-negative) face of the block. Args: block, x, y, z, texture */ - protected void renderFaceXNeg( - RenderBlocks aRenderer, double x, double y, double z, IIcon icon, ExtendedFacing extendedFacing) { + protected void renderFaceXNeg(RenderBlocks aRenderer, double x, double y, double z, IIcon icon, + ExtendedFacing extendedFacing) { // **NOT A BUG**: aRenderer.uvRotateNorth REALLY CONTROLS THE ROTATION OF THE WEST SIDE switch (useExtFacing ? extendedFacing.getRotation() : Rotation.NORMAL) { case COUNTER_CLOCKWISE: @@ -380,10 +380,10 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } /** - * Renders the given texture to the east (x-positive) face of the block. Args: block, x, y, z, texture + * Renders the given texture to the east (x-positive) face of the block. Args: block, x, y, z, texture */ - protected void renderFaceXPos( - RenderBlocks aRenderer, double x, double y, double z, IIcon icon, ExtendedFacing extendedFacing) { + protected void renderFaceXPos(RenderBlocks aRenderer, double x, double y, double z, IIcon icon, + ExtendedFacing extendedFacing) { aRenderer.field_152631_f = true; // **NOT A BUG**: aRenderer.uvRotateSouth REALLY CONTROLS THE ROTATION OF THE EAST SIDE switch (useExtFacing ? extendedFacing.getRotation() : Rotation.NORMAL) { @@ -427,8 +427,7 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol if (meta instanceof IAlignmentProvider) { alignment = ((IAlignmentProvider) meta).getAlignment(); } else if (meta != null) { - return ExtendedFacing.of(ForgeDirection.getOrientation( - meta.getBaseMetaTileEntity().getFrontFacing())); + return ExtendedFacing.of(ForgeDirection.getOrientation(meta.getBaseMetaTileEntity().getFrontFacing())); } } else if (te instanceof IAlignmentProvider) { alignment = ((IAlignmentProvider) te).getAlignment(); diff --git a/src/main/java/gregtech/common/render/GT_Renderer_Block.java b/src/main/java/gregtech/common/render/GT_Renderer_Block.java index 5831c76bf4..454982b48c 100644 --- a/src/main/java/gregtech/common/render/GT_Renderer_Block.java +++ b/src/main/java/gregtech/common/render/GT_Renderer_Block.java @@ -21,6 +21,19 @@ import static net.minecraftforge.common.util.ForgeDirection.UP; import static net.minecraftforge.common.util.ForgeDirection.VALID_DIRECTIONS; import static net.minecraftforge.common.util.ForgeDirection.WEST; +import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; +import net.minecraft.client.particle.EffectRenderer; +import net.minecraft.client.particle.EntityDiggingFX; +import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +import org.lwjgl.opengl.GL11; + import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.relauncher.Side; @@ -36,19 +49,9 @@ import gregtech.api.objects.XSTR; import gregtech.common.blocks.GT_Block_Machines; import gregtech.common.blocks.GT_Block_Ores_Abstract; import gregtech.common.blocks.GT_TileEntity_Ores; -import net.minecraft.block.Block; -import net.minecraft.client.Minecraft; -import net.minecraft.client.particle.EffectRenderer; -import net.minecraft.client.particle.EntityDiggingFX; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import org.lwjgl.opengl.GL11; public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { + public static final float blockMin = 0.0F; public static final float blockMax = 1.0F; private static final float coverThickness = blockMax / 8.0F; @@ -63,34 +66,44 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { RenderingRegistry.registerBlockHandler(this); } - public static boolean renderStandardBlock( - IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, RenderBlocks aRenderer) { + public static boolean renderStandardBlock(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, + RenderBlocks aRenderer) { final TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); if ((tTileEntity instanceof IPipeRenderedTileEntity)) { - return renderStandardBlock(aWorld, aX, aY, aZ, aBlock, aRenderer, new ITexture[][] { - ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) DOWN.ordinal()), - ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) UP.ordinal()), - ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) NORTH.ordinal()), - ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) SOUTH.ordinal()), - ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) WEST.ordinal()), - ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) EAST.ordinal()) - }); + return renderStandardBlock( + aWorld, + aX, + aY, + aZ, + aBlock, + aRenderer, + new ITexture[][] { ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) DOWN.ordinal()), + ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) UP.ordinal()), + ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) NORTH.ordinal()), + ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) SOUTH.ordinal()), + ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) WEST.ordinal()), + ((IPipeRenderedTileEntity) tTileEntity).getTextureCovered((byte) EAST.ordinal()) }); } if ((tTileEntity instanceof ITexturedTileEntity)) { - return renderStandardBlock(aWorld, aX, aY, aZ, aBlock, aRenderer, new ITexture[][] { - ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) DOWN.ordinal()), - ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) UP.ordinal()), - ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) NORTH.ordinal()), - ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) SOUTH.ordinal()), - ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) WEST.ordinal()), - ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) EAST.ordinal()) - }); + return renderStandardBlock( + aWorld, + aX, + aY, + aZ, + aBlock, + aRenderer, + new ITexture[][] { ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) DOWN.ordinal()), + ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) UP.ordinal()), + ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) NORTH.ordinal()), + ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) SOUTH.ordinal()), + ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) WEST.ordinal()), + ((ITexturedTileEntity) tTileEntity).getTexture(aBlock, (byte) EAST.ordinal()) }); } return false; } - public static boolean renderStandardBlock( - IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, RenderBlocks aRenderer, ITexture[][] aTextures) { + public static boolean renderStandardBlock(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, + RenderBlocks aRenderer, ITexture[][] aTextures) { aBlock.setBlockBounds(blockMin, blockMin, blockMin, blockMax, blockMax, blockMax); aRenderer.setRenderBoundsFromBlock(aBlock); @@ -103,14 +116,8 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { return true; } - public static boolean renderPipeBlock( - IBlockAccess aWorld, - int aX, - int aY, - int aZ, - Block aBlock, - IPipeRenderedTileEntity aTileEntity, - RenderBlocks aRenderer) { + public static boolean renderPipeBlock(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, + IPipeRenderedTileEntity aTileEntity, RenderBlocks aRenderer) { final byte aConnections = aTileEntity.getConnections(); if ((aConnections & (HAS_FRESHFOAM | HAS_HARDENEDFOAM)) != 0) { return renderStandardBlock(aWorld, aX, aY, aZ, aBlock, aRenderer); @@ -471,8 +478,8 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } @SideOnly(Side.CLIENT) - public static void addHitEffects( - EffectRenderer effectRenderer, Block block, World world, int x, int y, int z, int side) { + public static void addHitEffects(EffectRenderer effectRenderer, Block block, World world, int x, int y, int z, + int side) { double rX = x + XSTR.XSTR_INSTANCE.nextDouble() * 0.8 + 0.1; double rY = y + XSTR.XSTR_INSTANCE.nextDouble() * 0.8 + 0.1; double rZ = z + XSTR.XSTR_INSTANCE.nextDouble() * 0.8 + 0.1; @@ -489,11 +496,18 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } else if (side == 5) { rX = x + 1.1; } - effectRenderer.addEffect((new EntityDiggingFX( - world, rX, rY, rZ, 0.0, 0.0, 0.0, block, block.getDamageValue(world, x, y, z), side)) - .applyColourMultiplier(x, y, z) - .multiplyVelocity(0.2F) - .multipleParticleScaleBy(0.6F)); + effectRenderer.addEffect( + (new EntityDiggingFX( + world, + rX, + rY, + rZ, + 0.0, + 0.0, + 0.0, + block, + block.getDamageValue(world, x, y, z), + side)).applyColourMultiplier(x, y, z).multiplyVelocity(0.2F).multipleParticleScaleBy(0.6F)); } @SideOnly(Side.CLIENT) @@ -504,7 +518,8 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { final double bX = x + (iX + 0.5) / 4.0; final double bY = y + (iY + 0.5) / 4.0; final double bZ = z + (iZ + 0.5) / 4.0; - effectRenderer.addEffect((new EntityDiggingFX( + effectRenderer.addEffect( + (new EntityDiggingFX( world, bX, bY, @@ -513,8 +528,7 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { bY - y - 0.5, bZ - z - 0.5, block, - block.getDamageValue(world, x, y, z))) - .applyColourMultiplier(x, y, z)); + block.getDamageValue(world, x, y, z))).applyColourMultiplier(x, y, z)); } } } @@ -610,24 +624,65 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { aBlock.setBlockBoundsForItemRender(); aRenderer.setRenderBoundsFromBlock(aBlock); renderNegativeYFacing( - null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) DOWN.ordinal()), true); + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tTileEntity.getTexture(aBlock, (byte) DOWN.ordinal()), + true); renderPositiveYFacing( - null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) UP.ordinal()), true); + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tTileEntity.getTexture(aBlock, (byte) UP.ordinal()), + true); renderNegativeZFacing( - null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) NORTH.ordinal()), true); + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tTileEntity.getTexture(aBlock, (byte) NORTH.ordinal()), + true); renderPositiveZFacing( - null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) SOUTH.ordinal()), true); + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tTileEntity.getTexture(aBlock, (byte) SOUTH.ordinal()), + true); renderNegativeXFacing( - null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) WEST.ordinal()), true); + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tTileEntity.getTexture(aBlock, (byte) WEST.ordinal()), + true); renderPositiveXFacing( - null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) EAST.ordinal()), true); - } else if (aMeta > 0 - && (aMeta < GregTech_API.METATILEENTITIES.length) + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tTileEntity.getTexture(aBlock, (byte) EAST.ordinal()), + true); + } else if (aMeta > 0 && (aMeta < GregTech_API.METATILEENTITIES.length) && aBlock instanceof GT_Block_Machines && (GregTech_API.METATILEENTITIES[aMeta] != null) && (!GregTech_API.METATILEENTITIES[aMeta].renderInInventory(aBlock, aMeta, aRenderer))) { - renderNormalInventoryMetaTileEntity(aBlock, aMeta, aRenderer); - } + renderNormalInventoryMetaTileEntity(aBlock, aMeta, aRenderer); + } aBlock.setBlockBounds(blockMin, blockMin, blockMin, blockMax, blockMax, blockMax); } @@ -756,7 +811,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { 0, 0, tMetaTileEntity.getTexture( - iGregTechTileEntity, (byte) DOWN.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + iGregTechTileEntity, + (byte) DOWN.ordinal(), + (byte) WEST.ordinal(), + (byte) -1, + true, + false), true); renderPositiveYFacing( null, @@ -766,7 +826,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { 0, 0, tMetaTileEntity.getTexture( - iGregTechTileEntity, (byte) UP.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + iGregTechTileEntity, + (byte) UP.ordinal(), + (byte) WEST.ordinal(), + (byte) -1, + true, + false), true); renderNegativeZFacing( null, @@ -776,7 +841,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { 0, 0, tMetaTileEntity.getTexture( - iGregTechTileEntity, (byte) NORTH.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + iGregTechTileEntity, + (byte) NORTH.ordinal(), + (byte) WEST.ordinal(), + (byte) -1, + true, + false), true); renderPositiveZFacing( null, @@ -786,7 +856,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { 0, 0, tMetaTileEntity.getTexture( - iGregTechTileEntity, (byte) SOUTH.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + iGregTechTileEntity, + (byte) SOUTH.ordinal(), + (byte) WEST.ordinal(), + (byte) -1, + true, + false), true); renderNegativeXFacing( null, @@ -796,7 +871,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { 0, 0, tMetaTileEntity.getTexture( - iGregTechTileEntity, (byte) WEST.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + iGregTechTileEntity, + (byte) WEST.ordinal(), + (byte) WEST.ordinal(), + (byte) -1, + true, + false), true); renderPositiveXFacing( null, @@ -806,24 +886,22 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { 0, 0, tMetaTileEntity.getTexture( - iGregTechTileEntity, (byte) EAST.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + iGregTechTileEntity, + (byte) EAST.ordinal(), + (byte) WEST.ordinal(), + (byte) -1, + true, + false), true); } } - public static void renderNegativeYFacing( - IBlockAccess aWorld, - RenderBlocks aRenderer, - Block aBlock, - int aX, - int aY, - int aZ, - ITexture[] aIcon, - boolean aFullBlock) { + public static void renderNegativeYFacing(IBlockAccess aWorld, RenderBlocks aRenderer, Block aBlock, int aX, int aY, + int aZ, ITexture[] aIcon, boolean aFullBlock) { if (aWorld != null) { if ((aFullBlock) && (!aBlock.shouldSideBeRendered(aWorld, aX, aY - 1, aZ, 0))) return; - Tessellator.instance.setBrightness( - aBlock.getMixedBrightnessForBlock(aWorld, aX, aFullBlock ? aY - 1 : aY, aZ)); + Tessellator.instance + .setBrightness(aBlock.getMixedBrightnessForBlock(aWorld, aX, aFullBlock ? aY - 1 : aY, aZ)); } if (aIcon == null) return; for (ITexture iTexture : aIcon) { @@ -833,19 +911,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } } - public static void renderPositiveYFacing( - IBlockAccess aWorld, - RenderBlocks aRenderer, - Block aBlock, - int aX, - int aY, - int aZ, - ITexture[] aIcon, - boolean aFullBlock) { + public static void renderPositiveYFacing(IBlockAccess aWorld, RenderBlocks aRenderer, Block aBlock, int aX, int aY, + int aZ, ITexture[] aIcon, boolean aFullBlock) { if (aWorld != null) { if ((aFullBlock) && (!aBlock.shouldSideBeRendered(aWorld, aX, aY + 1, aZ, 1))) return; - Tessellator.instance.setBrightness( - aBlock.getMixedBrightnessForBlock(aWorld, aX, aFullBlock ? aY + 1 : aY, aZ)); + Tessellator.instance + .setBrightness(aBlock.getMixedBrightnessForBlock(aWorld, aX, aFullBlock ? aY + 1 : aY, aZ)); } if (aIcon == null) return; for (ITexture iTexture : aIcon) { @@ -855,19 +926,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } } - public static void renderNegativeZFacing( - IBlockAccess aWorld, - RenderBlocks aRenderer, - Block aBlock, - int aX, - int aY, - int aZ, - ITexture[] aIcon, - boolean aFullBlock) { + public static void renderNegativeZFacing(IBlockAccess aWorld, RenderBlocks aRenderer, Block aBlock, int aX, int aY, + int aZ, ITexture[] aIcon, boolean aFullBlock) { if (aWorld != null) { if ((aFullBlock) && (!aBlock.shouldSideBeRendered(aWorld, aX, aY, aZ - 1, 2))) return; - Tessellator.instance.setBrightness( - aBlock.getMixedBrightnessForBlock(aWorld, aX, aY, aFullBlock ? aZ - 1 : aZ)); + Tessellator.instance + .setBrightness(aBlock.getMixedBrightnessForBlock(aWorld, aX, aY, aFullBlock ? aZ - 1 : aZ)); } if (aIcon == null) return; for (ITexture iTexture : aIcon) { @@ -877,19 +941,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } } - public static void renderPositiveZFacing( - IBlockAccess aWorld, - RenderBlocks aRenderer, - Block aBlock, - int aX, - int aY, - int aZ, - ITexture[] aIcon, - boolean aFullBlock) { + public static void renderPositiveZFacing(IBlockAccess aWorld, RenderBlocks aRenderer, Block aBlock, int aX, int aY, + int aZ, ITexture[] aIcon, boolean aFullBlock) { if (aWorld != null) { if ((aFullBlock) && (!aBlock.shouldSideBeRendered(aWorld, aX, aY, aZ + 1, 3))) return; - Tessellator.instance.setBrightness( - aBlock.getMixedBrightnessForBlock(aWorld, aX, aY, aFullBlock ? aZ + 1 : aZ)); + Tessellator.instance + .setBrightness(aBlock.getMixedBrightnessForBlock(aWorld, aX, aY, aFullBlock ? aZ + 1 : aZ)); } if (aIcon == null) return; for (ITexture iTexture : aIcon) { @@ -899,19 +956,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } } - public static void renderNegativeXFacing( - IBlockAccess aWorld, - RenderBlocks aRenderer, - Block aBlock, - int aX, - int aY, - int aZ, - ITexture[] aIcon, - boolean aFullBlock) { + public static void renderNegativeXFacing(IBlockAccess aWorld, RenderBlocks aRenderer, Block aBlock, int aX, int aY, + int aZ, ITexture[] aIcon, boolean aFullBlock) { if (aWorld != null) { if ((aFullBlock) && (!aBlock.shouldSideBeRendered(aWorld, aX - 1, aY, aZ, 4))) return; - Tessellator.instance.setBrightness( - aBlock.getMixedBrightnessForBlock(aWorld, aFullBlock ? aX - 1 : aX, aY, aZ)); + Tessellator.instance + .setBrightness(aBlock.getMixedBrightnessForBlock(aWorld, aFullBlock ? aX - 1 : aX, aY, aZ)); } if (aIcon == null) return; for (ITexture iTexture : aIcon) { @@ -921,19 +971,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } } - public static void renderPositiveXFacing( - IBlockAccess aWorld, - RenderBlocks aRenderer, - Block aBlock, - int aX, - int aY, - int aZ, - ITexture[] aIcon, - boolean aFullBlock) { + public static void renderPositiveXFacing(IBlockAccess aWorld, RenderBlocks aRenderer, Block aBlock, int aX, int aY, + int aZ, ITexture[] aIcon, boolean aFullBlock) { if (aWorld != null) { if ((aFullBlock) && (!aBlock.shouldSideBeRendered(aWorld, aX + 1, aY, aZ, 5))) return; - Tessellator.instance.setBrightness( - aBlock.getMixedBrightnessForBlock(aWorld, aFullBlock ? aX + 1 : aX, aY, aZ)); + Tessellator.instance + .setBrightness(aBlock.getMixedBrightnessForBlock(aWorld, aFullBlock ? aX + 1 : aX, aY, aZ)); } if (aIcon == null) return; for (ITexture iTexture : aIcon) { @@ -944,8 +987,8 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } @Override - public boolean renderWorldBlock( - IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, int aModelID, RenderBlocks aRenderer) { + public boolean renderWorldBlock(IBlockAccess aWorld, int aX, int aY, int aZ, Block aBlock, int aModelID, + RenderBlocks aRenderer) { aRenderer.enableAO = Minecraft.isAmbientOcclusionEnabled() && GT_Mod.gregtechproxy.mRenderTileAmbientOcclusion; aRenderer.useInventoryTint = false; if (aBlock instanceof IRenderedBlock) { @@ -959,13 +1002,11 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { } else { final boolean[] tSides = new boolean[6]; if (tRenderer instanceof IRenderedBlockSideCheck) { - for (byte tSide : ALL_VALID_SIDES) - rReturn |= (tSides[tSide] = - ((IRenderedBlockSideCheck) tRenderer).renderFullBlockSide(aBlock, aRenderer, tSide)); + for (byte tSide : ALL_VALID_SIDES) rReturn |= (tSides[tSide] = ((IRenderedBlockSideCheck) tRenderer) + .renderFullBlockSide(aBlock, aRenderer, tSide)); } else { - for (byte tSide : ALL_VALID_SIDES) - rReturn |= (tSides[tSide] = aBlock.shouldSideBeRendered( - aWorld, aX + OFFX[tSide], aY + OFFY[tSide], aZ + OFFZ[tSide], tSide)); + for (byte tSide : ALL_VALID_SIDES) rReturn |= (tSides[tSide] = aBlock + .shouldSideBeRendered(aWorld, aX + OFFX[tSide], aY + OFFY[tSide], aZ + OFFZ[tSide], tSide)); } for (int i = 0, j = tRenderer.getRenderPasses(aBlock); i < j; i++) { if (tRenderer.usesRenderPass(i)) { diff --git a/src/main/java/gregtech/common/render/GT_Renderer_Entity_Arrow.java b/src/main/java/gregtech/common/render/GT_Renderer_Entity_Arrow.java index 7feb8ce1b8..028573fdaf 100644 --- a/src/main/java/gregtech/common/render/GT_Renderer_Entity_Arrow.java +++ b/src/main/java/gregtech/common/render/GT_Renderer_Entity_Arrow.java @@ -1,11 +1,13 @@ package gregtech.common.render; -import cpw.mods.fml.client.registry.RenderingRegistry; import net.minecraft.client.renderer.entity.RenderArrow; import net.minecraft.entity.Entity; import net.minecraft.util.ResourceLocation; +import cpw.mods.fml.client.registry.RenderingRegistry; + public class GT_Renderer_Entity_Arrow extends RenderArrow { + private final ResourceLocation mTexture; public GT_Renderer_Entity_Arrow(Class aArrowClass, String aTextureName) { diff --git a/src/main/java/gregtech/common/render/GT_SidedTexture.java b/src/main/java/gregtech/common/render/GT_SidedTexture.java index 4fbc28374a..912e339208 100644 --- a/src/main/java/gregtech/common/render/GT_SidedTexture.java +++ b/src/main/java/gregtech/common/render/GT_SidedTexture.java @@ -1,40 +1,30 @@ package gregtech.common.render; +import net.minecraft.block.Block; +import net.minecraft.client.renderer.RenderBlocks; + import gregtech.api.interfaces.IColorModulationContainer; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; import gregtech.api.render.TextureFactory; -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; public class GT_SidedTexture extends GT_TextureBase implements ITexture, IColorModulationContainer { + protected final ITexture[] mTextures; /** * DO NOT MANIPULATE THE VALUES INSIDE THIS ARRAY!!! * <p/> - * Just set this variable to another different Array instead. - * Otherwise some colored things will get Problems. + * Just set this variable to another different Array instead. Otherwise some colored things will get Problems. */ private final short[] mRGBa; - protected GT_SidedTexture( - IIconContainer aIcon0, - IIconContainer aIcon1, - IIconContainer aIcon2, - IIconContainer aIcon3, - IIconContainer aIcon4, - IIconContainer aIcon5, - short[] aRGBa, - boolean aAllowAlpha) { + protected GT_SidedTexture(IIconContainer aIcon0, IIconContainer aIcon1, IIconContainer aIcon2, + IIconContainer aIcon3, IIconContainer aIcon4, IIconContainer aIcon5, short[] aRGBa, boolean aAllowAlpha) { if (aRGBa.length != 4) throw new IllegalArgumentException("RGBa doesn't have 4 Values @ GT_RenderedTexture"); - mTextures = new ITexture[] { - TextureFactory.of(aIcon0, aRGBa, aAllowAlpha), - TextureFactory.of(aIcon1, aRGBa, aAllowAlpha), - TextureFactory.of(aIcon2, aRGBa, aAllowAlpha), - TextureFactory.of(aIcon3, aRGBa, aAllowAlpha), - TextureFactory.of(aIcon4, aRGBa, aAllowAlpha), - TextureFactory.of(aIcon5, aRGBa, aAllowAlpha) - }; + mTextures = new ITexture[] { TextureFactory.of(aIcon0, aRGBa, aAllowAlpha), + TextureFactory.of(aIcon1, aRGBa, aAllowAlpha), TextureFactory.of(aIcon2, aRGBa, aAllowAlpha), + TextureFactory.of(aIcon3, aRGBa, aAllowAlpha), TextureFactory.of(aIcon4, aRGBa, aAllowAlpha), + TextureFactory.of(aIcon5, aRGBa, aAllowAlpha) }; mRGBa = aRGBa; } diff --git a/src/main/java/gregtech/common/render/GT_TextureBase.java b/src/main/java/gregtech/common/render/GT_TextureBase.java index bb39410a8e..20188e2e01 100644 --- a/src/main/java/gregtech/common/render/GT_TextureBase.java +++ b/src/main/java/gregtech/common/render/GT_TextureBase.java @@ -1,11 +1,13 @@ package gregtech.common.render; -import gregtech.api.interfaces.ITexture; -import gregtech.api.util.GT_UtilityClient; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.Tessellator; +import gregtech.api.interfaces.ITexture; +import gregtech.api.util.GT_UtilityClient; + public abstract class GT_TextureBase implements ITexture { + protected boolean isDrawing = false; @Override diff --git a/src/main/java/gregtech/common/render/GT_TextureBuilder.java b/src/main/java/gregtech/common/render/GT_TextureBuilder.java index 0971933add..d3941bea24 100644 --- a/src/main/java/gregtech/common/render/GT_TextureBuilder.java +++ b/src/main/java/gregtech/common/render/GT_TextureBuilder.java @@ -1,19 +1,22 @@ package gregtech.common.render; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraftforge.common.util.ForgeDirection; + import gregtech.GT_Mod; import gregtech.api.enums.Dyes; import gregtech.api.enums.GT_Values; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.ITextureBuilder; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import net.minecraft.block.Block; -import net.minecraftforge.common.util.ForgeDirection; -@SuppressWarnings({"unused", "ClassWithTooManyFields"}) +@SuppressWarnings({ "unused", "ClassWithTooManyFields" }) public class GT_TextureBuilder implements ITextureBuilder { + private final List<IIconContainer> iconContainerList; private final List<ITexture> textureLayers; private Block fromBlock; @@ -134,8 +137,8 @@ public class GT_TextureBuilder implements ITextureBuilder { } private boolean isCTMBlock(Block fromBlock, int fromMeta) { - return GT_Mod.gregtechproxy.mCTMBlockCache.computeIfAbsent( - fromBlock, (byte) fromMeta, GT_TextureBuilder::apply); + return GT_Mod.gregtechproxy.mCTMBlockCache + .computeIfAbsent(fromBlock, (byte) fromMeta, GT_TextureBuilder::apply); } private static Boolean apply(Block b, Byte m) { diff --git a/src/main/java/gregtech/common/render/IRenderedBlock.java b/src/main/java/gregtech/common/render/IRenderedBlock.java index a29ea6b6f9..0f3a472e53 100644 --- a/src/main/java/gregtech/common/render/IRenderedBlock.java +++ b/src/main/java/gregtech/common/render/IRenderedBlock.java @@ -1,15 +1,17 @@ package gregtech.common.render; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import gregtech.api.enums.Textures; -import gregtech.api.interfaces.ITexture; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.item.ItemStack; import net.minecraft.world.IBlockAccess; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.Textures; +import gregtech.api.interfaces.ITexture; + public interface IRenderedBlock { + /** @return the Textures to be rendered */ @SideOnly(Side.CLIENT) ITexture[] getTexture(Block aBlock, byte aSide, int aRenderPass, boolean[] aShouldSideBeRendered); @@ -50,6 +52,7 @@ public interface IRenderedBlock { IRenderedBlock passRenderingToObject(IBlockAccess aWorld, int aX, int aY, int aZ); class ErrorRenderer implements IRenderedBlockSideCheck, IRenderedBlock { + public static final ErrorRenderer INSTANCE = new ErrorRenderer(); public ITexture[] mErrorTexture = Textures.BlockIcons.ERROR_RENDERING; diff --git a/src/main/java/gregtech/common/render/IRenderedBlockSideCheck.java b/src/main/java/gregtech/common/render/IRenderedBlockSideCheck.java index ef0c469f04..1d109216de 100644 --- a/src/main/java/gregtech/common/render/IRenderedBlockSideCheck.java +++ b/src/main/java/gregtech/common/render/IRenderedBlockSideCheck.java @@ -1,11 +1,13 @@ package gregtech.common.render; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + public interface IRenderedBlockSideCheck { + /** returning false stops all the other Rendering from happening on that Side. */ @SideOnly(Side.CLIENT) boolean renderFullBlockSide(Block aBlock, RenderBlocks aRenderer, byte aSide); diff --git a/src/main/java/gregtech/common/render/items/CosmicNeutroniumRenderer.java b/src/main/java/gregtech/common/render/items/CosmicNeutroniumRenderer.java index 5a9cda6559..5a67abf85a 100644 --- a/src/main/java/gregtech/common/render/items/CosmicNeutroniumRenderer.java +++ b/src/main/java/gregtech/common/render/items/CosmicNeutroniumRenderer.java @@ -2,18 +2,21 @@ package gregtech.common.render.items; import static gregtech.common.render.GT_RenderUtil.colorGTItem; -import com.gtnewhorizons.modularui.api.math.Pos2d; -import gregtech.api.enums.Textures; -import gregtech.common.render.GT_RenderUtil; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.entity.RenderItem; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; + import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; +import com.gtnewhorizons.modularui.api.math.Pos2d; + +import gregtech.api.enums.Textures; +import gregtech.common.render.GT_RenderUtil; + public class CosmicNeutroniumRenderer extends GT_GeneratedMaterial_Renderer { // spotless:off @@ -101,7 +104,7 @@ public class CosmicNeutroniumRenderer extends GT_GeneratedMaterial_Renderer { GL11.glPopMatrix(); } - // GL11.glEnable(GL11.GL_ALPHA_TEST); + // GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glEnable(GL12.GL_RESCALE_NORMAL); GL11.glEnable(GL11.GL_DEPTH_TEST); diff --git a/src/main/java/gregtech/common/render/items/GT_GeneratedItem_Renderer.java b/src/main/java/gregtech/common/render/items/GT_GeneratedItem_Renderer.java index 26115592f3..7559580f96 100644 --- a/src/main/java/gregtech/common/render/items/GT_GeneratedItem_Renderer.java +++ b/src/main/java/gregtech/common/render/items/GT_GeneratedItem_Renderer.java @@ -3,13 +3,8 @@ package gregtech.common.render.items; import static gregtech.api.enums.ItemList.*; import static gregtech.api.enums.ItemList.Large_Fluid_Cell_Chrome; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Textures; -import gregtech.api.items.GT_MetaGenerated_Item; -import gregtech.api.util.GT_Utility; -import gregtech.common.render.GT_RenderUtil; -import gregtech.loaders.ExtraIcons; import javax.annotation.Nullable; + import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; @@ -18,14 +13,21 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.fluids.FluidStack; + import org.lwjgl.opengl.GL11; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Textures; +import gregtech.api.items.GT_MetaGenerated_Item; +import gregtech.api.util.GT_Utility; +import gregtech.common.render.GT_RenderUtil; +import gregtech.loaders.ExtraIcons; + public class GT_GeneratedItem_Renderer implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { - return type == ItemRenderType.EQUIPPED - || type == ItemRenderType.EQUIPPED_FIRST_PERSON + return type == ItemRenderType.EQUIPPED || type == ItemRenderType.EQUIPPED_FIRST_PERSON || type == ItemRenderType.INVENTORY || type == ItemRenderType.ENTITY; } @@ -56,8 +58,8 @@ public class GT_GeneratedItem_Renderer implements IItemRenderer { if (tCharge >= tStats[0]) { tIcon = aItem.mIconList[(aMetaData - aItem.mOffset)][8]; } else { - tIcon = aItem.mIconList[(aMetaData - aItem.mOffset)][ - (7 - (int) Math.max(0L, Math.min(5L, (tStats[0] - tCharge) * 6L / tStats[0])))]; + tIcon = aItem.mIconList[(aMetaData - aItem.mOffset)][(7 + - (int) Math.max(0L, Math.min(5L, (tStats[0] - tCharge) * 6L / tStats[0])))]; } } } else { @@ -107,8 +109,8 @@ public class GT_GeneratedItem_Renderer implements IItemRenderer { return null; } - private static void renderLargeFluidCellExtraParts( - IItemRenderer.ItemRenderType type, ItemList item, ItemStack stack) { + private static void renderLargeFluidCellExtraParts(IItemRenderer.ItemRenderType type, ItemList item, + ItemStack stack) { IIcon inner; if (item == Large_Fluid_Cell_Steel) inner = ExtraIcons.steelLargeCellInner; diff --git a/src/main/java/gregtech/common/render/items/GT_GeneratedMaterial_Renderer.java b/src/main/java/gregtech/common/render/items/GT_GeneratedMaterial_Renderer.java index b9419caa28..46d6a13469 100644 --- a/src/main/java/gregtech/common/render/items/GT_GeneratedMaterial_Renderer.java +++ b/src/main/java/gregtech/common/render/items/GT_GeneratedMaterial_Renderer.java @@ -1,10 +1,5 @@ package gregtech.common.render.items; -import codechicken.lib.render.TextureUtils; -import gregtech.api.interfaces.IIconContainer; -import gregtech.api.items.GT_MetaGenerated_Item; -import gregtech.api.util.GT_Utility; -import gregtech.common.render.GT_RenderUtil; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; import net.minecraft.item.ItemStack; @@ -12,14 +7,20 @@ import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; + import org.lwjgl.opengl.GL11; +import codechicken.lib.render.TextureUtils; +import gregtech.api.interfaces.IIconContainer; +import gregtech.api.items.GT_MetaGenerated_Item; +import gregtech.api.util.GT_Utility; +import gregtech.common.render.GT_RenderUtil; + public class GT_GeneratedMaterial_Renderer implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { - return type == ItemRenderType.EQUIPPED - || type == ItemRenderType.EQUIPPED_FIRST_PERSON + return type == ItemRenderType.EQUIPPED || type == ItemRenderType.EQUIPPED_FIRST_PERSON || type == ItemRenderType.INVENTORY || type == ItemRenderType.ENTITY; } @@ -30,13 +31,12 @@ public class GT_GeneratedMaterial_Renderer implements IItemRenderer { } /** - * Handle special fluid display rendering. Return false if does not need such kind of handling. - * Note: annotations should not be rendered here. Only render the fluid - * texture. - * Parameters are values passed from {@link IItemRenderer#renderItem(ItemRenderType, ItemStack, Object...)} - * verbatim. Do not modify the argument. + * Handle special fluid display rendering. Return false if does not need such kind of handling. Note: annotations + * should not be rendered here. Only render the fluid texture. Parameters are values passed from + * {@link IItemRenderer#renderItem(ItemRenderType, ItemStack, Object...)} verbatim. Do not modify the argument. * * While this is called, BLEND and ALPHA_TEST is on. It is expected that these remain enabled while exit. + * * @return true if did special fluid display rendering. false otherwise. */ public boolean renderFluidDisplayItem(ItemRenderType type, ItemStack aStack, Object... data) { diff --git a/src/main/java/gregtech/common/render/items/GT_MetaGenerated_Item_Renderer.java b/src/main/java/gregtech/common/render/items/GT_MetaGenerated_Item_Renderer.java index 0133f21c8b..49b5521485 100644 --- a/src/main/java/gregtech/common/render/items/GT_MetaGenerated_Item_Renderer.java +++ b/src/main/java/gregtech/common/render/items/GT_MetaGenerated_Item_Renderer.java @@ -2,20 +2,22 @@ package gregtech.common.render.items; import static gregtech.api.util.GT_OreDictUnificator.getAssociation; -import gregtech.api.enums.Materials; -import gregtech.api.items.GT_MetaGenerated_Item; -import gregtech.api.util.GT_Utility; import java.util.Objects; + import net.minecraft.client.renderer.entity.RenderItem; import net.minecraft.item.ItemStack; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.client.MinecraftForgeClient; + import org.lwjgl.opengl.GL11; +import gregtech.api.enums.Materials; +import gregtech.api.items.GT_MetaGenerated_Item; +import gregtech.api.util.GT_Utility; + public class GT_MetaGenerated_Item_Renderer implements IItemRenderer { - private final IItemRenderer mItemRenderer = new GT_GeneratedItem_Renderer(); - ; + private final IItemRenderer mItemRenderer = new GT_GeneratedItem_Renderer();; private final IItemRenderer mMaterialRenderer = new GT_GeneratedMaterial_Renderer(); public GT_MetaGenerated_Item_Renderer() { diff --git a/src/main/java/gregtech/common/render/items/GaiaSpiritRenderer.java b/src/main/java/gregtech/common/render/items/GaiaSpiritRenderer.java index 12510dce30..25ab13bd25 100644 --- a/src/main/java/gregtech/common/render/items/GaiaSpiritRenderer.java +++ b/src/main/java/gregtech/common/render/items/GaiaSpiritRenderer.java @@ -1,15 +1,19 @@ package gregtech.common.render.items; -import gregtech.GT_Mod; -import gregtech.common.render.GT_RenderUtil; import java.awt.*; + import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; + import org.lwjgl.opengl.GL11; +import gregtech.GT_Mod; +import gregtech.common.render.GT_RenderUtil; + public class GaiaSpiritRenderer extends GT_GeneratedMaterial_Renderer { + @Override public void renderRegularItem(ItemRenderType type, ItemStack aStack, IIcon icon, boolean shouldModulateColor) { long animationTicks = GT_Mod.gregtechproxy.getAnimationTicks(); diff --git a/src/main/java/gregtech/common/render/items/InfinityRenderer.java b/src/main/java/gregtech/common/render/items/InfinityRenderer.java index 4f1695bec0..5733501d95 100644 --- a/src/main/java/gregtech/common/render/items/InfinityRenderer.java +++ b/src/main/java/gregtech/common/render/items/InfinityRenderer.java @@ -1,12 +1,7 @@ package gregtech.common.render.items; -import codechicken.lib.render.TextureUtils; -import gregtech.api.enums.Textures; -import gregtech.api.interfaces.IIconContainer; -import gregtech.api.items.GT_MetaGenerated_Item; -import gregtech.api.util.GT_Utility; -import gregtech.common.render.GT_RenderUtil; import java.util.Random; + import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.RenderHelper; @@ -16,10 +11,19 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.fluids.FluidStack; + import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; +import codechicken.lib.render.TextureUtils; +import gregtech.api.enums.Textures; +import gregtech.api.interfaces.IIconContainer; +import gregtech.api.items.GT_MetaGenerated_Item; +import gregtech.api.util.GT_Utility; +import gregtech.common.render.GT_RenderUtil; + public class InfinityRenderer extends GT_GeneratedMaterial_Renderer { + public Random rand = new Random(); @Override diff --git a/src/main/java/gregtech/common/render/items/TranscendentMetalRenderer.java b/src/main/java/gregtech/common/render/items/TranscendentMetalRenderer.java index 0865101826..a7ad2cd19c 100644 --- a/src/main/java/gregtech/common/render/items/TranscendentMetalRenderer.java +++ b/src/main/java/gregtech/common/render/items/TranscendentMetalRenderer.java @@ -1,44 +1,35 @@ package gregtech.common.render.items; -import gregtech.GT_Mod; -import gregtech.api.items.GT_MetaGenerated_Item; -import gregtech.common.render.GT_RenderUtil; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; + import org.lwjgl.opengl.GL11; +import gregtech.GT_Mod; +import gregtech.api.items.GT_MetaGenerated_Item; +import gregtech.common.render.GT_RenderUtil; + public class TranscendentMetalRenderer extends GT_GeneratedMaterial_Renderer { + // frameIndex should not have 3 or more frames with same value (unless it's meant to be still) // otherwise the primitive linear interpolation will render the animation in a pretty sluggish way - private final int[] frameIndex = new int[] { - 0, 0, 0, 0, 1, 1, 2, 3, 4, 5, 7, 8, 9, 10, 12, 13, 14, 16, 17, 19, 21, 22, 24, 25, 27, 29, 30, 32, 33, 35, 36, - 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 50, 49, 48, 47, 46, 45, 44, 43, 42, 40, 39, 38, 36, 35, 33, 32, - 30, 29, 27, 25, 24, 22, 21, 19, 17, 16, 14, 13, 12, 10, 9, 8, 7, 5, 4, 3, 2, 1, 1, 0, 0, 0, 0 - }; - private final float[] frameRotation = new float[] { - 0, 7, 14, 21, 28, 36, 43, 50, 57, 64, - 72, 79, 86, 93, 100, 108, 115, 122, 129, 136, - 144, 151, 158, 165, 172, 180, 187, 194, 201, 208, - 216, 223, 230, 237, 244, 252, 259, 266, 273, 280, - 288, 295, 302, 309, 316, 324, 331, 338, 345, 352, - 360 - }; - private final float[] frameAlpha = new float[] { - 100 / 255f, 106 / 255f, 112 / 255f, 118 / 255f, 124 / 255f, 131 / 255f, 137 / 255f, 143 / 255f, 149 / 255f, - 155 / 255f, - 162 / 255f, 168 / 255f, 174 / 255f, 180 / 255f, 186 / 255f, 193 / 255f, 199 / 255f, 205 / 255f, 211 / 255f, - 217 / 255f, - 224 / 255f, 230 / 255f, 236 / 255f, 242 / 255f, 248 / 255f, 255 / 255f, 248 / 255f, 242 / 255f, 236 / 255f, - 230 / 255f, - 224 / 255f, 217 / 255f, 211 / 255f, 205 / 255f, 199 / 255f, 193 / 255f, 186 / 255f, 180 / 255f, 174 / 255f, - 168 / 255f, - 162 / 255f, 155 / 255f, 149 / 255f, 143 / 255f, 137 / 255f, 131 / 255f, 124 / 255f, 118 / 255f, 112 / 255f, - 106 / 255f, - 100 / 255f - }; + private final int[] frameIndex = new int[] { 0, 0, 0, 0, 1, 1, 2, 3, 4, 5, 7, 8, 9, 10, 12, 13, 14, 16, 17, 19, 21, + 22, 24, 25, 27, 29, 30, 32, 33, 35, 36, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 50, 49, 48, 47, 46, + 45, 44, 43, 42, 40, 39, 38, 36, 35, 33, 32, 30, 29, 27, 25, 24, 22, 21, 19, 17, 16, 14, 13, 12, 10, 9, 8, 7, + 5, 4, 3, 2, 1, 1, 0, 0, 0, 0 }; + private final float[] frameRotation = new float[] { 0, 7, 14, 21, 28, 36, 43, 50, 57, 64, 72, 79, 86, 93, 100, 108, + 115, 122, 129, 136, 144, 151, 158, 165, 172, 180, 187, 194, 201, 208, 216, 223, 230, 237, 244, 252, 259, + 266, 273, 280, 288, 295, 302, 309, 316, 324, 331, 338, 345, 352, 360 }; + private final float[] frameAlpha = new float[] { 100 / 255f, 106 / 255f, 112 / 255f, 118 / 255f, 124 / 255f, + 131 / 255f, 137 / 255f, 143 / 255f, 149 / 255f, 155 / 255f, 162 / 255f, 168 / 255f, 174 / 255f, 180 / 255f, + 186 / 255f, 193 / 255f, 199 / 255f, 205 / 255f, 211 / 255f, 217 / 255f, 224 / 255f, 230 / 255f, 236 / 255f, + 242 / 255f, 248 / 255f, 255 / 255f, 248 / 255f, 242 / 255f, 236 / 255f, 230 / 255f, 224 / 255f, 217 / 255f, + 211 / 255f, 205 / 255f, 199 / 255f, 193 / 255f, 186 / 255f, 180 / 255f, 174 / 255f, 168 / 255f, 162 / 255f, + 155 / 255f, 149 / 255f, 143 / 255f, 137 / 255f, 131 / 255f, 124 / 255f, 118 / 255f, 112 / 255f, 106 / 255f, + 100 / 255f }; private static float linearInterpolation(float[] controlPoints, int frameA, int frameB, float partial) { float a = controlPoints[frameA], b = controlPoints[frameB]; diff --git a/src/main/java/gregtech/common/render/items/UniversiumRenderer.java b/src/main/java/gregtech/common/render/items/UniversiumRenderer.java index baaf951ddc..d7b1aced36 100644 --- a/src/main/java/gregtech/common/render/items/UniversiumRenderer.java +++ b/src/main/java/gregtech/common/render/items/UniversiumRenderer.java @@ -1,10 +1,5 @@ package gregtech.common.render.items; -import codechicken.lib.render.TextureUtils; -import gregtech.api.enums.ItemList; -import gregtech.api.interfaces.IIconContainer; -import gregtech.api.items.GT_MetaGenerated_Item; -import gregtech.common.render.GT_RenderUtil; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.RenderHelper; @@ -17,9 +12,16 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraft.util.MathHelper; import net.minecraftforge.client.IItemRenderer; + import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; + import singulariteam.eternalsingularity.render.CosmicRenderStuffs; +import codechicken.lib.render.TextureUtils; +import gregtech.api.enums.ItemList; +import gregtech.api.interfaces.IIconContainer; +import gregtech.api.items.GT_MetaGenerated_Item; +import gregtech.common.render.GT_RenderUtil; public class UniversiumRenderer extends GT_GeneratedMaterial_Renderer { @@ -38,7 +40,10 @@ public class UniversiumRenderer extends GT_GeneratedMaterial_Renderer { @Override public boolean renderFluidDisplayItem(ItemRenderType type, ItemStack aStack, Object... data) { magicRenderMethod( - type, ItemList.Emitter_UEV.get(1), aStack.getItem().getIconFromDamage(aStack.getItemDamage()), data); + type, + ItemList.Emitter_UEV.get(1), + aStack.getItem().getIconFromDamage(aStack.getItemDamage()), + data); return true; } @@ -207,7 +212,14 @@ public class UniversiumRenderer extends GT_GeneratedMaterial_Renderer { // RENDER ITEM IN HAND ItemRenderer.renderItemIn2D( - Tessellator.instance, f1, f2, f, f3, icon.getIconWidth(), icon.getIconHeight(), scale); + Tessellator.instance, + f1, + f2, + f, + f3, + icon.getIconWidth(), + icon.getIconHeight(), + scale); } GL11.glDisable(GL11.GL_ALPHA_TEST); |