diff options
Diffstat (limited to 'src/main/java/gregtech/common/render')
19 files changed, 923 insertions, 356 deletions
diff --git a/src/main/java/gregtech/common/render/CosmicItemRendererGT.java b/src/main/java/gregtech/common/render/CosmicItemRendererGT.java index 0055e8ad08..d8539a6f9a 100644 --- a/src/main/java/gregtech/common/render/CosmicItemRendererGT.java +++ b/src/main/java/gregtech/common/render/CosmicItemRendererGT.java @@ -1,8 +1,7 @@ package gregtech.common.render; -import java.util.*; - import fox.spiteful.avaritia.render.CosmicItemRenderer; +import java.util.*; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.client.MinecraftForgeClient; @@ -10,65 +9,64 @@ import net.minecraftforge.oredict.OreDictionary; public class CosmicItemRendererGT extends CosmicItemRenderer { - private static CosmicItemRendererGT sInstance = null; - public static HashMap<Item, List<Integer>> sCosmicItemRendererGtMapping = new HashMap<Item, List<Integer>>(); - private static boolean sInit = false; + private static CosmicItemRendererGT sInstance = null; + public static HashMap<Item, List<Integer>> sCosmicItemRendererGtMapping = new HashMap<Item, List<Integer>>(); + private static boolean sInit = false; - public static void registerItemWithMeta(Item aItem, List<Integer> aMeta) { - if (aItem != null) { - if (aMeta == null || aMeta.isEmpty()) { - ArrayList<Integer> aWildCard = new ArrayList<Integer>(); - aWildCard.add(OreDictionary.WILDCARD_VALUE); - sCosmicItemRendererGtMapping.put(aItem, aWildCard); - } - else { - sCosmicItemRendererGtMapping.put(aItem, aMeta); - } - } - } + public static void registerItemWithMeta(Item aItem, List<Integer> aMeta) { + if (aItem != null) { + if (aMeta == null || aMeta.isEmpty()) { + ArrayList<Integer> aWildCard = new ArrayList<Integer>(); + aWildCard.add(OreDictionary.WILDCARD_VALUE); + sCosmicItemRendererGtMapping.put(aItem, aWildCard); + } else { + sCosmicItemRendererGtMapping.put(aItem, aMeta); + } + } + } - public static void registerItemWithMeta(Item aItem, int aMeta) { - if (aItem != null) { - ArrayList<Integer> aSingleMeta = new ArrayList<Integer>(); - aSingleMeta.add(aMeta); - sCosmicItemRendererGtMapping.put(aItem, aSingleMeta); - } - } + public static void registerItemWithMeta(Item aItem, int aMeta) { + if (aItem != null) { + ArrayList<Integer> aSingleMeta = new ArrayList<Integer>(); + aSingleMeta.add(aMeta); + sCosmicItemRendererGtMapping.put(aItem, aSingleMeta); + } + } - public static void init() { - if (sInstance == null) { - sInstance = new CosmicItemRendererGT(); - } - if (!sInit) { - for (Item aItem : sCosmicItemRendererGtMapping.keySet()) { MinecraftForgeClient.registerItemRenderer(aItem, sInstance); } - sInit = true; - } - } + public static void init() { + if (sInstance == null) { + sInstance = new CosmicItemRendererGT(); + } + if (!sInit) { + for (Item aItem : sCosmicItemRendererGtMapping.keySet()) { + MinecraftForgeClient.registerItemRenderer(aItem, sInstance); + } + sInit = true; + } + } - private boolean isSupported(ItemStack aStack) { - List<Integer> aMeta = sCosmicItemRendererGtMapping.get(aStack.getItem()); - if (aMeta != null && !aMeta.isEmpty()) { + private boolean isSupported(ItemStack aStack) { + List<Integer> aMeta = sCosmicItemRendererGtMapping.get(aStack.getItem()); + if (aMeta != null && !aMeta.isEmpty()) { - for (int meta : aMeta) { - if (meta == OreDictionary.WILDCARD_VALUE) { - return true; - } - else { - if (aStack.getItemDamage() == meta) { - return true; - } - } - } - } - return false; - } + for (int meta : aMeta) { + if (meta == OreDictionary.WILDCARD_VALUE) { + return true; + } else { + if (aStack.getItemDamage() == meta) { + return true; + } + } + } + } + return false; + } - @Override - public void renderItem(ItemRenderType type, ItemStack item, Object... data) { - if (!isSupported(item)) { - return; - } - super.renderItem(type, item, data); - } - + @Override + public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + if (!isSupported(item)) { + return; + } + super.renderItem(type, item, data); + } } diff --git a/src/main/java/gregtech/common/render/GT_CapeRenderer.java b/src/main/java/gregtech/common/render/GT_CapeRenderer.java index 7609f6b257..0ec2778165 100644 --- a/src/main/java/gregtech/common/render/GT_CapeRenderer.java +++ b/src/main/java/gregtech/common/render/GT_CapeRenderer.java @@ -3,6 +3,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; @@ -13,16 +14,16 @@ import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.event.RenderPlayerEvent; import org.lwjgl.opengl.GL11; -import java.util.Collection; - 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/TecCape.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/TecCape.png") + }; private final Collection<String> mCapeList; public GT_CapeRenderer(Collection<String> aCapeList) { @@ -44,7 +45,7 @@ public class GT_CapeRenderer extends RenderPlayer { return; } try { - ResourceLocation tResource = aPlayer.getLocationCape(); + ResourceLocation tResource = aPlayer.getLocationCape(); if (aPlayer.getDisplayName().equalsIgnoreCase("Friedi4321")) { tResource = this.mCapes[0]; } @@ -57,13 +58,13 @@ public class GT_CapeRenderer extends RenderPlayer { if (aPlayer.getDisplayName().equalsIgnoreCase("GregoriusT")) { tResource = this.mCapes[3]; } - if (this.mCapeList.contains(aPlayer.getDisplayName().toLowerCase()+":capedonor")) { + if (this.mCapeList.contains(aPlayer.getDisplayName().toLowerCase() + ":capedonor")) { tResource = this.mCapes[4]; } - if (this.mCapeList.contains(aPlayer.getDisplayName().toLowerCase()+":capedev")) { + if (this.mCapeList.contains(aPlayer.getDisplayName().toLowerCase() + ":capedev")) { tResource = this.mCapes[5]; } - if (this.mCapeList.contains(aPlayer.getDisplayName().toLowerCase()+":capetec")) { + if (this.mCapeList.contains(aPlayer.getDisplayName().toLowerCase() + ":capetec")) { tResource = this.mCapes[6]; } @@ -71,10 +72,17 @@ 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 - (aPlayer.prevPosX + (aPlayer.posX - aPlayer.prevPosX) * 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 - (aPlayer.prevPosZ + (aPlayer.posZ - aPlayer.prevPosZ) * aPartialTicks); - float f6 = aPlayer.prevRenderYawOffset + (aPlayer.renderYawOffset - aPlayer.prevRenderYawOffset) * 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 + - (aPlayer.prevPosY + (aPlayer.posY - aPlayer.prevPosY) * 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; double d3 = MathHelper.sin(f6 * 3.141593F / 180.0F); double d4 = -MathHelper.cos(f6 * 3.141593F / 180.0F); float f7 = (float) d1 * 10.0F; @@ -90,7 +98,12 @@ 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) * 6.0F) * 32.0F * f10; + f7 += MathHelper.sin((aPlayer.prevDistanceWalkedModified + + (aPlayer.distanceWalkedModified - aPlayer.prevDistanceWalkedModified) + * aPartialTicks) + * 6.0F) + * 32.0F + * f10; if (aPlayer.isSneaking()) { f7 += 25.0F; } diff --git a/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java b/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java index ce089091d3..2f6c691253 100644 --- a/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java +++ b/src/main/java/gregtech/common/render/GT_CopiedBlockTexture.java @@ -57,9 +57,9 @@ 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) - .setupColor(ForgeDirection.UP.ordinal(), 0xffffff); + new LightingHelper(aRenderer) + .setupLightingYPos(aBlock, aX, aY, aZ) + .setupColor(ForgeDirection.UP.ordinal(), 0xffffff); aRenderer.renderFaceYPos(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 366da77420..5b9ed1bb29 100644 --- a/src/main/java/gregtech/common/render/GT_CopiedCTMBlockTexture.java +++ b/src/main/java/gregtech/common/render/GT_CopiedCTMBlockTexture.java @@ -14,7 +14,8 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc private final byte mSide, mMeta; GT_CopiedCTMBlockTexture(Block aBlock, int aSide, int aMeta, short[] aRGBa, boolean allowAlpha) { - if (aRGBa.length != 4) throw new IllegalArgumentException("RGBa doesn't have 4 Values @ GT_CopiedCTMBlockTexture"); + if (aRGBa.length != 4) + throw new IllegalArgumentException("RGBa doesn't have 4 Values @ GT_CopiedCTMBlockTexture"); mBlock = aBlock; mSide = (byte) aSide; mMeta = (byte) aMeta; @@ -41,7 +42,8 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc 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)); + .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,7 +55,8 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc 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)); + .setupColor( + ForgeDirection.WEST.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceXNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); } @@ -75,7 +78,8 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc 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)); + .setupColor( + ForgeDirection.DOWN.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); } @@ -86,7 +90,8 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc 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)); + .setupColor( + ForgeDirection.SOUTH.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), aX, aY, aZ)); aRenderer.renderFaceZPos(aBlock, aX, aY, aZ, aIcon); draw(aRenderer); } @@ -98,7 +103,8 @@ class GT_CopiedCTMBlockTexture extends GT_TextureBase implements ITexture, IBloc aRenderer.field_152631_f = true; new LightingHelper(aRenderer) .setupLightingZNeg(aBlock, aX, aY, aZ) - .setupColor(ForgeDirection.NORTH.ordinal(), mBlock.colorMultiplier(getBlockAccess(aRenderer), 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 48d9b0bf90..18fb47cffc 100644 --- a/src/main/java/gregtech/common/render/GT_FlaskRenderer.java +++ b/src/main/java/gregtech/common/render/GT_FlaskRenderer.java @@ -27,7 +27,6 @@ public final class GT_FlaskRenderer implements IItemRenderer { return type != ItemRenderType.FIRST_PERSON_MAP; } - @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, IItemRenderer.ItemRendererHelper helper) { return type == ItemRenderType.ENTITY; @@ -85,7 +84,15 @@ public final class GT_FlaskRenderer implements IItemRenderer { if (type.equals(ItemRenderType.INVENTORY)) { DrawUtil.renderIcon(icon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + icon.getMaxU(), + icon.getMinV(), + icon.getMinU(), + icon.getMaxV(), + icon.getIconWidth(), + icon.getIconHeight(), + 0.0625F); } GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL11.GL_BLEND); diff --git a/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java b/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java index c4e23eab6e..221c6cd8aa 100644 --- a/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java +++ b/src/main/java/gregtech/common/render/GT_FluidDisplayStackRenderer.java @@ -21,24 +21,20 @@ public class GT_FluidDisplayStackRenderer implements IItemRenderer { } @Override - public boolean handleRenderType (ItemStack item, ItemRenderType type) - { - if(!item.hasTagCompound()) - return false; + public boolean handleRenderType(ItemStack item, ItemRenderType type) { + if (!item.hasTagCompound()) return false; return type == ItemRenderType.INVENTORY; } @Override - public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) - { - //not sure what this does. + public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { + // not sure what this does. return false; } @Override - public void renderItem (ItemRenderType type, ItemStack item, Object... data) { - if (item == null || item.getItem() == null || !(item.getItem() instanceof GT_FluidDisplayItem)) - return; + public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + if (item == null || item.getItem() == null || !(item.getItem() instanceof GT_FluidDisplayItem)) return; OpenGlHelper.glBlendFunc(770, 771, 1, 0); GL11.glEnable(GL11.GL_BLEND); @@ -53,13 +49,13 @@ public class GT_FluidDisplayStackRenderer implements IItemRenderer { final float x_max = icon.getMaxU(); final float y_min = icon.getMinV(); final float y_max = icon.getMaxV(); - tess.addVertexWithUV( 0, 16, 0, x_min, y_max); + tess.addVertexWithUV(0, 16, 0, x_min, y_max); tess.addVertexWithUV(16, 16, 0, x_max, y_max); - tess.addVertexWithUV(16, 0, 0, x_max, y_min); - tess.addVertexWithUV( 0, 0, 0, x_min, y_min); + tess.addVertexWithUV(16, 0, 0, x_max, y_min); + tess.addVertexWithUV(0, 0, 0, x_min, y_min); tess.draw(); - if(item.getTagCompound() == null) { + if (item.getTagCompound() == null) { GL11.glDisable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_ALPHA_TEST); return; @@ -75,9 +71,10 @@ public class GT_FluidDisplayStackRenderer implements IItemRenderer { } else { int exp = (int) (Math.log(fluidAmount) / Math.log(1000)); double shortAmount = fluidAmount / Math.pow(1000, exp); - if ( shortAmount >= 100) { - amountString = String.format("%.0f%cL", shortAmount, "kMGTPE".charAt(exp - 1)); //heard it here first, PetaLiters - } else if ( shortAmount >= 10) { + if (shortAmount >= 100) { + amountString = String.format( + "%.0f%cL", shortAmount, "kMGTPE".charAt(exp - 1)); // heard it here first, PetaLiters + } else if (shortAmount >= 10) { amountString = String.format("%.1f%cL", shortAmount, "kMGTPE".charAt(exp - 1)); } else { amountString = String.format("%.2f%cL", shortAmount, "kMGTPE".charAt(exp - 1)); @@ -85,11 +82,12 @@ public class GT_FluidDisplayStackRenderer implements IItemRenderer { } FontRenderer fontRender = Minecraft.getMinecraft().fontRenderer; - float smallTextScale = fontRender.getUnicodeFlag() ? 3F/4F : 1F/2F; + float smallTextScale = fontRender.getUnicodeFlag() ? 3F / 4F : 1F / 2F; GL11.glDisable(GL11.GL_BLEND); GL11.glScalef(smallTextScale, smallTextScale, 1.0f); - fontRender.drawString( amountString, 0, (int) (16/smallTextScale) - fontRender.FONT_HEIGHT + 1, 0xFFFFFF, true); + fontRender.drawString( + amountString, 0, (int) (16 / smallTextScale) - fontRender.FONT_HEIGHT + 1, 0xFFFFFF, true); GL11.glScalef(1f, 1f, 1f); GL11.glDisable(GL11.GL_ALPHA_TEST); } 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 a57f97792c..52e99f4539 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 @@ -29,11 +29,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if ((GT_Utility.isStackInvalid(aStack)) || (aStack.getItemDamage() < 0)) { return false; } - return (aType == IItemRenderer.ItemRenderType.EQUIPPED_FIRST_PERSON) || (aType == IItemRenderer.ItemRenderType.INVENTORY) || (aType == IItemRenderer.ItemRenderType.EQUIPPED) || (aType == IItemRenderer.ItemRenderType.ENTITY); + return (aType == IItemRenderer.ItemRenderType.EQUIPPED_FIRST_PERSON) + || (aType == IItemRenderer.ItemRenderType.INVENTORY) + || (aType == IItemRenderer.ItemRenderType.EQUIPPED) + || (aType == IItemRenderer.ItemRenderType.ENTITY); } @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; } @@ -72,7 +76,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tIcon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tIcon.getMaxU(), tIcon.getMinV(), tIcon.getMinU(), tIcon.getMaxV(), tIcon.getIconWidth(), tIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tIcon.getMaxU(), + tIcon.getMinV(), + tIcon.getMinU(), + tIcon.getMaxV(), + tIcon.getIconWidth(), + tIcon.getIconHeight(), + 0.0625F); } GL11.glColor3f(1.0F, 1.0F, 1.0F); } @@ -82,7 +94,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tOverlay, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tOverlay.getMaxU(), tOverlay.getMinV(), tOverlay.getMinU(), tOverlay.getMaxV(), tOverlay.getIconWidth(), tOverlay.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tOverlay.getMaxU(), + tOverlay.getMinV(), + tOverlay.getMinU(), + tOverlay.getMaxV(), + tOverlay.getIconWidth(), + tOverlay.getIconHeight(), + 0.0625F); } } } @@ -98,7 +118,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tIcon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tIcon.getMaxU(), tIcon.getMinV(), tIcon.getMinU(), tIcon.getMaxV(), tIcon.getIconWidth(), tIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tIcon.getMaxU(), + tIcon.getMinV(), + tIcon.getMinU(), + tIcon.getMaxV(), + tIcon.getIconWidth(), + tIcon.getIconHeight(), + 0.0625F); } GL11.glColor3f(1.0F, 1.0F, 1.0F); } @@ -108,11 +136,20 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tOverlay, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tOverlay.getMaxU(), tOverlay.getMinV(), tOverlay.getMinU(), tOverlay.getMaxV(), tOverlay.getIconWidth(), tOverlay.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tOverlay.getMaxU(), + tOverlay.getMinV(), + tOverlay.getMinU(), + tOverlay.getMaxV(), + tOverlay.getIconWidth(), + tOverlay.getIconHeight(), + 0.0625F); } } } - if ((aType == IItemRenderer.ItemRenderType.INVENTORY) && (GT_MetaGenerated_Tool.getPrimaryMaterial(aStack) != Materials._NULL)) { + if ((aType == IItemRenderer.ItemRenderType.INVENTORY) + && (GT_MetaGenerated_Tool.getPrimaryMaterial(aStack) != Materials._NULL)) { long tDamage = GT_MetaGenerated_Tool.getToolDamage(aStack); long tMaxDamage = GT_MetaGenerated_Tool.getToolMaxDamage(aStack); if (tDamage <= 0L) { @@ -120,7 +157,9 @@ 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(); @@ -131,7 +170,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tIcon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tIcon.getMaxU(), tIcon.getMinV(), tIcon.getMinU(), tIcon.getMaxV(), tIcon.getIconWidth(), tIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tIcon.getMaxU(), + tIcon.getMinV(), + tIcon.getMinU(), + tIcon.getMaxV(), + tIcon.getIconWidth(), + tIcon.getIconHeight(), + 0.0625F); } } if (tOverlay != null) { @@ -140,7 +187,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tOverlay, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tOverlay.getMaxU(), tOverlay.getMinV(), tOverlay.getMinU(), tOverlay.getMaxV(), tOverlay.getIconWidth(), tOverlay.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tOverlay.getMaxU(), + tOverlay.getMinV(), + tOverlay.getMinU(), + tOverlay.getMaxV(), + tOverlay.getIconWidth(), + tOverlay.getIconHeight(), + 0.0625F); } } } @@ -152,7 +207,10 @@ 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; @@ -166,7 +224,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tIcon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tIcon.getMaxU(), tIcon.getMinV(), tIcon.getMinU(), tIcon.getMaxV(), tIcon.getIconWidth(), tIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tIcon.getMaxU(), + tIcon.getMinV(), + tIcon.getMinU(), + tIcon.getMaxV(), + tIcon.getIconWidth(), + tIcon.getIconHeight(), + 0.0625F); } } if (tOverlay != null) { @@ -175,7 +241,15 @@ public class GT_MetaGenerated_Tool_Renderer implements IItemRenderer { if (aType.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tOverlay, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tOverlay.getMaxU(), tOverlay.getMinV(), tOverlay.getMinU(), tOverlay.getMaxV(), tOverlay.getIconWidth(), tOverlay.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tOverlay.getMaxU(), + tOverlay.getMinV(), + tOverlay.getMinU(), + tOverlay.getMaxV(), + tOverlay.getIconWidth(), + tOverlay.getIconHeight(), + 0.0625F); } } } diff --git a/src/main/java/gregtech/common/render/GT_MultiTexture.java b/src/main/java/gregtech/common/render/GT_MultiTexture.java index 2d78b9b988..df5251f784 100644 --- a/src/main/java/gregtech/common/render/GT_MultiTexture.java +++ b/src/main/java/gregtech/common/render/GT_MultiTexture.java @@ -12,12 +12,10 @@ import net.minecraft.client.renderer.RenderBlocks; public class GT_MultiTexture extends GT_TextureBase implements ITexture { protected final ITexture[] mTextures; - public static GT_MultiTexture get(ITexture... aTextures) { return GT_Mod.instance.isClientSide() ? new GT_MultiTexture(aTextures) : null; } - protected GT_MultiTexture(ITexture... aTextures) { mTextures = aTextures; } diff --git a/src/main/java/gregtech/common/render/GT_PollutionRenderer.java b/src/main/java/gregtech/common/render/GT_PollutionRenderer.java index 5128af1c36..99689a535d 100644 --- a/src/main/java/gregtech/common/render/GT_PollutionRenderer.java +++ b/src/main/java/gregtech/common/render/GT_PollutionRenderer.java @@ -37,7 +37,7 @@ public class GT_PollutionRenderer { private static final int FOG_START_AT_POLLUTION = 400000; private static final int FOG_MAX_AT_POLLUTION = 7000000; - //jump from linear to exponential fog. x*FOG_MAX_AT_POLLUTION+FOG_START_AT_POLLUTION + // 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}; @@ -46,7 +46,7 @@ public class GT_PollutionRenderer { 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. + // TODO need to soft update some blocks, grass and leaves does more often than liquid it looks like. public GT_PollutionRenderer() { pollutionMap = new GT_ClientPollutionMap(); @@ -64,14 +64,12 @@ public class GT_PollutionRenderer { @SubscribeEvent(priority = EventPriority.HIGH) public void enteredWorld(WorldEvent.Load event) { EntityClientPlayerMP p = Minecraft.getMinecraft().thePlayer; - if (!event.world.isRemote || p == null) - return; + if (!event.world.isRemote || p == null) return; pollutionMap.reset(); } private static int color(int color, int pollution, int low, float high, short[] colors) { - if ( pollution < low) - return color; + if (pollution < low) return color; int r = (color >> 16) & 0xFF; int g = (color >> 8) & 0xFF; @@ -89,16 +87,19 @@ public class GT_PollutionRenderer { // Methods for hodgepodge to color grass / foliage blocks etc. public static int colorGrass(int oColor, int x, int z) { - return color(oColor, pollutionMap.getPollution(x, z)/1000, 350, 600, grassColor); + return color(oColor, pollutionMap.getPollution(x, z) / 1000, 350, 600, grassColor); } + public static int colorLeaves(int oColor, int x, int z) { - return color(oColor, pollutionMap.getPollution(x, z)/1000, 300, 500, leavesColor); + return color(oColor, pollutionMap.getPollution(x, z) / 1000, 300, 500, leavesColor); } + public static int colorLiquid(int oColor, int x, int z) { - return color(oColor, pollutionMap.getPollution(x, z)/1000, 300, 500, liquidColor); + return color(oColor, pollutionMap.getPollution(x, z) / 1000, 300, 500, liquidColor); } + public static int colorFoliage(int oColor, int x, int z) { - return color(oColor, pollutionMap.getPollution(x, z)/1000, 300, 500, foliageColor); + return color(oColor, pollutionMap.getPollution(x, z) / 1000, 300, 500, foliageColor); } public static int getKnownPollution(int x, int z) { @@ -107,19 +108,16 @@ public class GT_PollutionRenderer { @SubscribeEvent(priority = EventPriority.LOW) public void manipulateColor(EntityViewRenderEvent.FogColors event) { - if (!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) - return; + if (!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) return; - if (event.block.getMaterial() == Material.water || - event.block.getMaterial() == Material.lava) - return; + if (event.block.getMaterial() == Material.water || event.block.getMaterial() == Material.lava) return; float x = fogIntensityLastTick > 1 ? 1F : (float) fogIntensityLastTick; float xi = 1 - x; - event.red = xi*event.red + x*fogColor[0]; - event.green = xi*event.green + x*fogColor[1]; - event.blue = xi*event.blue + x*fogColor[2]; + event.red = xi * event.red + x * fogColor[0]; + event.green = xi * event.green + x * fogColor[1]; + event.blue = xi * event.blue + x * fogColor[2]; } private static final int END_MAX_DISTANCE = 192 - 1; @@ -129,74 +127,74 @@ public class GT_PollutionRenderer { public void renderGTPollutionFog(EntityViewRenderEvent.RenderFogEvent event) { if (!GT_Mod.gregtechproxy.mRenderPollutionFog) return; - if ((!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) || - (fogIntensityLastTick <= 0 && fogIntensityLastTick >= FOG_START_EXP_RATIO)) - return; + if ((!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) + || (fogIntensityLastTick <= 0 && fogIntensityLastTick >= FOG_START_EXP_RATIO)) return; if (event.fogMode == 0) { - double v = 1 - fogIntensityLastTick/FOG_START_EXP_RATIO; - //trying to smooth out jump from linear to exponential + double v = 1 - fogIntensityLastTick / FOG_START_EXP_RATIO; + // trying to smooth out jump from linear to exponential GL11.glFogi(GL11.GL_FOG_MODE, GL11.GL_LINEAR); - GL11.glFogf(GL11.GL_FOG_START, (float) ((END_MAX_DISTANCE-20) * 0.75F * v + 20)); + GL11.glFogf(GL11.GL_FOG_START, (float) ((END_MAX_DISTANCE - 20) * 0.75F * v + 20)); GL11.glFogf(GL11.GL_FOG_END, (float) (END_MAX_DISTANCE * (0.75F + v * 0.25F))); } - //else if ( event.fogMode < 0) { } + // else if ( event.fogMode < 0) { } } @SubscribeEvent(priority = EventPriority.LOWEST) public void renderGTPollutionFog(EntityViewRenderEvent.FogDensity event) { if (!GT_Mod.gregtechproxy.mRenderPollutionFog) return; - if (!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) - return; + if (!DEBUG && Minecraft.getMinecraft().thePlayer.capabilities.isCreativeMode) return; - if (event.entity.isPotionActive(Potion.blindness) || - (fogIntensityLastTick < FOG_START_EXP_RATIO) || - event.block.getMaterial() == Material.water || - event.block.getMaterial() == Material.lava - ) - return; + if (event.entity.isPotionActive(Potion.blindness) + || (fogIntensityLastTick < FOG_START_EXP_RATIO) + || event.block.getMaterial() == Material.water + || 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; + event.density = (float) Math.pow(fogIntensityLastTick - FOG_START_EXP_RATIO, .75F) / 5 + 0.01F; event.setCanceled(true); } private double lastUpdate = 0; + @SubscribeEvent(priority = EventPriority.HIGHEST) public void onRenderTick(TickEvent.RenderTickEvent event) { Minecraft mc = Minecraft.getMinecraft(); - if (mc == null) - return; + if (mc == null) return; EntityClientPlayerMP player = mc.thePlayer; - if (player == null) - return; + if (player == null) return; if (event.phase == TickEvent.Phase.START) { - if (event.renderTickTime < lastUpdate) - lastUpdate = lastUpdate - 1; + if (event.renderTickTime < lastUpdate) lastUpdate = lastUpdate - 1; float step = (float) ((event.renderTickTime - lastUpdate) / 50); lastUpdate = event.renderTickTime; - float fogIntensity = (playerPollution-FOG_START_AT_POLLUTION)/ (float) FOG_MAX_AT_POLLUTION; + float fogIntensity = (playerPollution - FOG_START_AT_POLLUTION) / (float) FOG_MAX_AT_POLLUTION; if (fogIntensity > 1) fogIntensity = 1; else if (fogIntensity < 0) fogIntensity = 0; - double e = fogIntensity-fogIntensityLastTick; + double e = fogIntensity - fogIntensityLastTick; if (e != 0) { if (e > 0.2) e = 0.2D; - else if (e < -0.5) e = - 0.5D; + else if (e < -0.5) e = -0.5D; - if (e > 0.001D || e < -0.001D) - fogIntensityLastTick += step *e; - else - fogIntensityLastTick = fogIntensity; + if (e > 0.001D || e < -0.001D) fogIntensityLastTick += step * e; + else fogIntensityLastTick = fogIntensity; } - } - else if (DEBUG) { + } else if (DEBUG) { drawPollution("Intensity: " + (fogIntensityLastTick * 10000), 0); - drawPollution("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), 40); + drawPollution( + "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), + 40); } } @@ -205,22 +203,17 @@ public class GT_PollutionRenderer { public void onClientTick(TickEvent.ClientTickEvent event) { if (!GT_Mod.gregtechproxy.mRenderDirtParticles) return; Minecraft mc = Minecraft.getMinecraft(); - if (mc == null) - return; + if (mc == null) return; EntityClientPlayerMP player = mc.thePlayer; - if (player == null || (player.capabilities.isCreativeMode && !DEBUG)) - return; + if (player == null || (player.capabilities.isCreativeMode && !DEBUG)) return; World w = player.worldObj; playerPollution = pollutionMap.getPollution(player.lastTickPosX, player.lastTickPosZ); float intensity = ((float) playerPollution - PARTICLES_POLLUTION_START) / PARTICLES_POLLUTION_END; - if (intensity < 0) - return; - else if (intensity > 1) - intensity = 1; - else - intensity *= intensity; + if (intensity < 0) return; + else if (intensity > 1) intensity = 1; + else intensity *= intensity; int x = MathHelper.floor_double(player.posX); int y = MathHelper.floor_double(player.posY); @@ -235,13 +228,17 @@ public class GT_PollutionRenderer { Block block = w.getBlock(i1, j1, k1); if (block.getMaterial() == Material.air) { - EntityFX fx = new GT_EntityFXPollution(w, (float) i1 + w.rand.nextFloat(), (float) j1 + w.rand.nextFloat(), (float) k1 + w.rand.nextFloat()); + EntityFX fx = new GT_EntityFXPollution( + w, + (float) i1 + w.rand.nextFloat(), + (float) j1 + w.rand.nextFloat(), + (float) k1 + w.rand.nextFloat()); mc.effectRenderer.addEffect(fx); } } } - private void drawPollution(String text, int off){ + private void drawPollution(String text, int off) { GL11.glPushMatrix(); GL11.glEnable(GL11.GL_BLEND); OpenGlHelper.glBlendFunc(770, 771, 1, 0); diff --git a/src/main/java/gregtech/common/render/GT_RenderUtil.java b/src/main/java/gregtech/common/render/GT_RenderUtil.java index 1b674f440f..ef0cae11ff 100644 --- a/src/main/java/gregtech/common/render/GT_RenderUtil.java +++ b/src/main/java/gregtech/common/render/GT_RenderUtil.java @@ -8,7 +8,16 @@ 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 94b0e72419..3c12c9589d 100644 --- a/src/main/java/gregtech/common/render/GT_RenderedTexture.java +++ b/src/main/java/gregtech/common/render/GT_RenderedTexture.java @@ -1,5 +1,7 @@ package gregtech.common.render; +import static gregtech.api.util.LightingHelper.MAX_BRIGHTNESS; + import com.gtnewhorizon.structurelib.alignment.IAlignment; import com.gtnewhorizon.structurelib.alignment.IAlignmentProvider; import com.gtnewhorizon.structurelib.alignment.enumerable.ExtendedFacing; @@ -22,8 +24,6 @@ import net.minecraft.util.IIcon; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import static gregtech.api.util.LightingHelper.MAX_BRIGHTNESS; - public class GT_RenderedTexture extends GT_TextureBase implements ITexture, IColorModulationContainer { protected final IIconContainer mIconContainer; private final short[] mRGBa; @@ -31,7 +31,13 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol 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; @@ -176,7 +182,7 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol final boolean enableAO = aRenderer.enableAO; final LightingHelper lighting = new LightingHelper(aRenderer); if (glow) { - if (!GT_Mod.gregtechproxy.mRenderGlowTextures){ + if (!GT_Mod.gregtechproxy.mRenderGlowTextures) { draw(aRenderer); return; } @@ -208,7 +214,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: @@ -226,14 +233,23 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } final Flip aFlip = extendedFacing.getFlip(); - aRenderer.renderFaceYNeg(Blocks.air, x, y, z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped() ^ !stdOrient, aFlip.isVerticallyFliped()) : new GT_IconFlipped(icon, !stdOrient, false)); + aRenderer.renderFaceYNeg( + Blocks.air, + x, + y, + z, + useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped + ? new GT_IconFlipped( + icon, aFlip.isHorizontallyFlipped() ^ !stdOrient, aFlip.isVerticallyFliped()) + : new GT_IconFlipped(icon, !stdOrient, false)); aRenderer.uvRotateBottom = 0; } /** * 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: @@ -251,14 +267,22 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } final Flip aFlip = extendedFacing.getFlip(); - aRenderer.renderFaceYPos(Blocks.air, x, y, z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) : icon); + aRenderer.renderFaceYPos( + Blocks.air, + x, + y, + z, + useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped + ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) + : icon); aRenderer.uvRotateTop = 0; } /** * 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) { @@ -277,7 +301,14 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } final Flip aFlip = extendedFacing.getFlip(); - aRenderer.renderFaceZNeg(Blocks.air, x, y, z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) : icon); + aRenderer.renderFaceZNeg( + Blocks.air, + x, + y, + z, + useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped + ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) + : icon); aRenderer.uvRotateEast = 0; aRenderer.field_152631_f = false; } @@ -285,7 +316,8 @@ 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 */ - 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: @@ -303,14 +335,22 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } final Flip aFlip = extendedFacing.getFlip(); - aRenderer.renderFaceZPos(Blocks.air, x, y, z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) : icon); + aRenderer.renderFaceZPos( + Blocks.air, + x, + y, + z, + useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped + ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) + : icon); aRenderer.uvRotateWest = 0; } /** * 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: @@ -328,14 +368,22 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } final Flip aFlip = extendedFacing.getFlip(); - aRenderer.renderFaceXNeg(Blocks.air, x, y, z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) : icon); + aRenderer.renderFaceXNeg( + Blocks.air, + x, + y, + z, + useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped + ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) + : icon); aRenderer.uvRotateNorth = 0; } /** * 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) { @@ -354,7 +402,14 @@ public class GT_RenderedTexture extends GT_TextureBase implements ITexture, ICol } final Flip aFlip = extendedFacing.getFlip(); - aRenderer.renderFaceXPos(Blocks.air, x, y, z, useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) : icon); + aRenderer.renderFaceXPos( + Blocks.air, + x, + y, + z, + useExtFacing && GT_Mod.gregtechproxy.mRenderFlippedMachinesFlipped + ? new GT_IconFlipped(icon, aFlip.isHorizontallyFlipped(), aFlip.isVerticallyFliped()) + : icon); aRenderer.uvRotateSouth = 0; aRenderer.field_152631_f = false; } @@ -372,7 +427,8 @@ 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 ef8748064f..5831c76bf4 100644 --- a/src/main/java/gregtech/common/render/GT_Renderer_Block.java +++ b/src/main/java/gregtech/common/render/GT_Renderer_Block.java @@ -1,5 +1,26 @@ package gregtech.common.render; +import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES; +import static gregtech.api.enums.GT_Values.OFFX; +import static gregtech.api.enums.GT_Values.OFFY; +import static gregtech.api.enums.GT_Values.OFFZ; +import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_DOWN; +import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_EAST; +import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_NORTH; +import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_SOUTH; +import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_UP; +import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_WEST; +import static gregtech.api.interfaces.metatileentity.IConnectable.HAS_FRESHFOAM; +import static gregtech.api.interfaces.metatileentity.IConnectable.HAS_HARDENEDFOAM; +import static gregtech.api.interfaces.metatileentity.IConnectable.NO_CONNECTION; +import static net.minecraftforge.common.util.ForgeDirection.DOWN; +import static net.minecraftforge.common.util.ForgeDirection.EAST; +import static net.minecraftforge.common.util.ForgeDirection.NORTH; +import static net.minecraftforge.common.util.ForgeDirection.SOUTH; +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 cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.relauncher.Side; @@ -25,33 +46,8 @@ 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 java.util.Arrays; -import java.util.Collections; - -import static gregtech.api.enums.GT_Values.ALL_VALID_SIDES; -import static gregtech.api.enums.GT_Values.OFFX; -import static gregtech.api.enums.GT_Values.OFFY; -import static gregtech.api.enums.GT_Values.OFFZ; -import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_DOWN; -import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_EAST; -import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_NORTH; -import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_SOUTH; -import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_UP; -import static gregtech.api.interfaces.metatileentity.IConnectable.CONNECTED_WEST; -import static gregtech.api.interfaces.metatileentity.IConnectable.HAS_FRESHFOAM; -import static gregtech.api.interfaces.metatileentity.IConnectable.HAS_HARDENEDFOAM; -import static gregtech.api.interfaces.metatileentity.IConnectable.NO_CONNECTION; -import static net.minecraftforge.common.util.ForgeDirection.DOWN; -import static net.minecraftforge.common.util.ForgeDirection.EAST; -import static net.minecraftforge.common.util.ForgeDirection.NORTH; -import static net.minecraftforge.common.util.ForgeDirection.SOUTH; -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; - public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { public static final float blockMin = 0.0F; public static final float blockMax = 1.0F; @@ -67,31 +63,34 @@ 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); @@ -104,7 +103,14 @@ 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); @@ -465,7 +471,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; @@ -482,7 +489,11 @@ 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) @@ -493,7 +504,17 @@ 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(world, bX, bY, bZ, bX - x - 0.5, bY - y - 0.5, bZ - z - 0.5, block, block.getDamageValue(world, x, y, z))).applyColourMultiplier(x, y, z)); + effectRenderer.addEffect((new EntityDiggingFX( + world, + bX, + bY, + bZ, + bX - x - 0.5, + bY - y - 0.5, + bZ - z - 0.5, + block, + block.getDamageValue(world, x, y, z))) + .applyColourMultiplier(x, y, z)); } } } @@ -506,13 +527,12 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { GL11.glRotatef(90.0F, 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-0.5F, -0.5F, -0.5F); - if(aBlock instanceof IRenderedBlock) { + if (aBlock instanceof IRenderedBlock) { boolean tNeedsToSetBounds = true; final ItemStack aStack = new ItemStack(aBlock, 1, aMeta); - IRenderedBlock tRenderer = ((IRenderedBlock)aBlock).passRenderingToObject(aStack); + IRenderedBlock tRenderer = ((IRenderedBlock) aBlock).passRenderingToObject(aStack); if (tRenderer != null) tRenderer = tRenderer.passRenderingToObject(aStack); - if (tRenderer == null) - tRenderer = IRenderedBlock.ErrorRenderer.INSTANCE; + if (tRenderer == null) tRenderer = IRenderedBlock.ErrorRenderer.INSTANCE; for (int i = 0, j = tRenderer.getRenderPasses(aBlock); i < j; i++) { if (tRenderer.usesRenderPass(i)) { if (tRenderer.setBlockBounds(aBlock, i)) { @@ -524,12 +544,60 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { tNeedsToSetBounds = false; } - renderNegativeYFacing(null, aRenderer, aBlock, 0, 0, 0, tRenderer.getTexture(aBlock, (byte) DOWN.ordinal(), true, i), !tNeedsToSetBounds); - renderPositiveYFacing(null, aRenderer, aBlock, 0, 0, 0, tRenderer.getTexture(aBlock, (byte) UP.ordinal(), true, i), !tNeedsToSetBounds); - renderNegativeZFacing(null, aRenderer, aBlock, 0, 0, 0, tRenderer.getTexture(aBlock, (byte) NORTH.ordinal(), true, i), !tNeedsToSetBounds); - renderPositiveZFacing(null, aRenderer, aBlock, 0, 0, 0, tRenderer.getTexture(aBlock, (byte) SOUTH.ordinal(), true, i), !tNeedsToSetBounds); - renderNegativeXFacing(null, aRenderer, aBlock, 0, 0, 0, tRenderer.getTexture(aBlock, (byte) WEST.ordinal(), true, i), !tNeedsToSetBounds); - renderPositiveXFacing(null, aRenderer, aBlock, 0, 0, 0, tRenderer.getTexture(aBlock, (byte) EAST.ordinal(), true, i), !tNeedsToSetBounds); + renderNegativeYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tRenderer.getTexture(aBlock, (byte) DOWN.ordinal(), true, i), + !tNeedsToSetBounds); + renderPositiveYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tRenderer.getTexture(aBlock, (byte) UP.ordinal(), true, i), + !tNeedsToSetBounds); + renderNegativeZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tRenderer.getTexture(aBlock, (byte) NORTH.ordinal(), true, i), + !tNeedsToSetBounds); + renderPositiveZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tRenderer.getTexture(aBlock, (byte) SOUTH.ordinal(), true, i), + !tNeedsToSetBounds); + renderNegativeXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tRenderer.getTexture(aBlock, (byte) WEST.ordinal(), true, i), + !tNeedsToSetBounds); + renderPositiveXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tRenderer.getTexture(aBlock, (byte) EAST.ordinal(), true, i), + !tNeedsToSetBounds); } } if (tNeedsToSetBounds) aBlock.setBlockBounds(0, 0, 0, 1, 1, 1); @@ -541,18 +609,23 @@ 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); - renderPositiveYFacing(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); - renderPositiveZFacing(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); - renderPositiveXFacing(null, aRenderer, aBlock, 0, 0, 0, tTileEntity.getTexture(aBlock, (byte) EAST.ordinal()), true); + renderNegativeYFacing( + 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); + renderNegativeZFacing( + 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); + renderNegativeXFacing( + 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) - && aBlock instanceof GT_Block_Machines - && (GregTech_API.METATILEENTITIES[aMeta] != null) - && (!GregTech_API.METATILEENTITIES[aMeta].renderInInventory(aBlock, aMeta, aRenderer))) - { + && (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); } aBlock.setBlockBounds(blockMin, blockMin, blockMin, blockMax, blockMax, blockMax); @@ -584,26 +657,173 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { aBlock.setBlockBounds(blockMin, pipeMin, pipeMin, blockMax, pipeMax, pipeMax); aRenderer.setRenderBoundsFromBlock(aBlock); - renderNegativeYFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) DOWN.ordinal(), (byte) (CONNECTED_WEST | CONNECTED_EAST), (byte) -1, false, false), true); - renderPositiveYFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) UP.ordinal(), (byte) (CONNECTED_WEST | CONNECTED_EAST), (byte) -1, false, false), true); - renderNegativeZFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) NORTH.ordinal(), (byte) (CONNECTED_WEST | CONNECTED_EAST), (byte) -1, false, false), true); - renderPositiveZFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) SOUTH.ordinal(), (byte) (CONNECTED_WEST | CONNECTED_EAST), (byte) -1, false, false), true); - renderNegativeXFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) WEST.ordinal(), (byte) (CONNECTED_WEST | CONNECTED_EAST), (byte) -1, true, false), true); - renderPositiveXFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) EAST.ordinal(), (byte) (CONNECTED_WEST | CONNECTED_EAST), (byte) -1, true, false), true); + renderNegativeYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, + (byte) DOWN.ordinal(), + (byte) (CONNECTED_WEST | CONNECTED_EAST), + (byte) -1, + false, + false), + true); + renderPositiveYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, + (byte) UP.ordinal(), + (byte) (CONNECTED_WEST | CONNECTED_EAST), + (byte) -1, + false, + false), + true); + renderNegativeZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, + (byte) NORTH.ordinal(), + (byte) (CONNECTED_WEST | CONNECTED_EAST), + (byte) -1, + false, + false), + true); + renderPositiveZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, + (byte) SOUTH.ordinal(), + (byte) (CONNECTED_WEST | CONNECTED_EAST), + (byte) -1, + false, + false), + true); + renderNegativeXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, + (byte) WEST.ordinal(), + (byte) (CONNECTED_WEST | CONNECTED_EAST), + (byte) -1, + true, + false), + true); + renderPositiveXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, + (byte) EAST.ordinal(), + (byte) (CONNECTED_WEST | CONNECTED_EAST), + (byte) -1, + true, + false), + true); } else { - renderNegativeYFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) DOWN.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), true); - renderPositiveYFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) UP.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), true); - renderNegativeZFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) NORTH.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), true); - renderPositiveZFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) SOUTH.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), true); - renderNegativeXFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) WEST.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), true); - renderPositiveXFacing(null, aRenderer, aBlock, 0, 0, 0, tMetaTileEntity.getTexture(iGregTechTileEntity, (byte) EAST.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), true); + renderNegativeYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, (byte) DOWN.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + true); + renderPositiveYFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, (byte) UP.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + true); + renderNegativeZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, (byte) NORTH.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + true); + renderPositiveZFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, (byte) SOUTH.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + true); + renderNegativeXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + iGregTechTileEntity, (byte) WEST.ordinal(), (byte) WEST.ordinal(), (byte) -1, true, false), + true); + renderPositiveXFacing( + null, + aRenderer, + aBlock, + 0, + 0, + 0, + tMetaTileEntity.getTexture( + 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) { @@ -613,10 +833,19 @@ 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) { @@ -626,10 +855,19 @@ 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) { @@ -639,10 +877,19 @@ 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) { @@ -652,10 +899,19 @@ 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) { @@ -665,10 +921,19 @@ 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) { @@ -679,11 +944,12 @@ 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) { - IRenderedBlock tRenderer = ((IRenderedBlock)aBlock).passRenderingToObject(aWorld, aX, aY, aZ); + IRenderedBlock tRenderer = ((IRenderedBlock) aBlock).passRenderingToObject(aWorld, aX, aY, aZ); if (tRenderer != null) tRenderer = tRenderer.passRenderingToObject(aWorld, aX, aY, aZ); if (tRenderer == null) tRenderer = IRenderedBlock.ErrorRenderer.INSTANCE; boolean tNeedsToSetBounds = true; @@ -693,9 +959,13 @@ 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)) { @@ -707,12 +977,60 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { aRenderer.setRenderBoundsFromBlock(aBlock); tNeedsToSetBounds = false; } - renderNegativeYFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tRenderer.getTexture(aBlock, (byte) DOWN.ordinal(), i, tSides), tSides[DOWN.ordinal()]); - renderPositiveYFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tRenderer.getTexture(aBlock, (byte) UP.ordinal(), i, tSides), tSides[UP.ordinal()]); - renderNegativeZFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tRenderer.getTexture(aBlock, (byte) NORTH.ordinal(), i, tSides), tSides[NORTH.ordinal()]); - renderPositiveZFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tRenderer.getTexture(aBlock, (byte) SOUTH.ordinal(), i, tSides), tSides[SOUTH.ordinal()]); - renderNegativeXFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tRenderer.getTexture(aBlock, (byte) WEST.ordinal(), i, tSides), tSides[WEST.ordinal()]); - renderPositiveXFacing(aWorld, aRenderer, aBlock, aX, aY, aZ, tRenderer.getTexture(aBlock, (byte) EAST.ordinal(), i, tSides), tSides[EAST.ordinal()]); + renderNegativeYFacing( + aWorld, + aRenderer, + aBlock, + aX, + aY, + aZ, + tRenderer.getTexture(aBlock, (byte) DOWN.ordinal(), i, tSides), + tSides[DOWN.ordinal()]); + renderPositiveYFacing( + aWorld, + aRenderer, + aBlock, + aX, + aY, + aZ, + tRenderer.getTexture(aBlock, (byte) UP.ordinal(), i, tSides), + tSides[UP.ordinal()]); + renderNegativeZFacing( + aWorld, + aRenderer, + aBlock, + aX, + aY, + aZ, + tRenderer.getTexture(aBlock, (byte) NORTH.ordinal(), i, tSides), + tSides[NORTH.ordinal()]); + renderPositiveZFacing( + aWorld, + aRenderer, + aBlock, + aX, + aY, + aZ, + tRenderer.getTexture(aBlock, (byte) SOUTH.ordinal(), i, tSides), + tSides[SOUTH.ordinal()]); + renderNegativeXFacing( + aWorld, + aRenderer, + aBlock, + aX, + aY, + aZ, + tRenderer.getTexture(aBlock, (byte) WEST.ordinal(), i, tSides), + tSides[WEST.ordinal()]); + renderPositiveXFacing( + aWorld, + aRenderer, + aBlock, + aX, + aY, + aZ, + tRenderer.getTexture(aBlock, (byte) EAST.ordinal(), i, tSides), + tSides[EAST.ordinal()]); } } if (tNeedsToSetBounds) aBlock.setBlockBounds(0, 0, 0, 1, 1, 1); @@ -725,12 +1043,14 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler { if (tileEntity == null) return false; if (tileEntity instanceof IGregTechTileEntity) { final IMetaTileEntity metaTileEntity; - if ((metaTileEntity = ((IGregTechTileEntity) tileEntity).getMetaTileEntity()) != null && metaTileEntity.renderInWorld(aWorld, aX, aY, aZ, aBlock, aRenderer)) { + if ((metaTileEntity = ((IGregTechTileEntity) tileEntity).getMetaTileEntity()) != null + && metaTileEntity.renderInWorld(aWorld, aX, aY, aZ, aBlock, aRenderer)) { aRenderer.enableAO = false; return true; } } - if (tileEntity instanceof IPipeRenderedTileEntity && renderPipeBlock(aWorld, aX, aY, aZ, aBlock, (IPipeRenderedTileEntity) tileEntity, aRenderer)) { + if (tileEntity instanceof IPipeRenderedTileEntity + && renderPipeBlock(aWorld, aX, aY, aZ, aBlock, (IPipeRenderedTileEntity) tileEntity, aRenderer)) { aRenderer.enableAO = false; return true; } diff --git a/src/main/java/gregtech/common/render/GT_SidedTexture.java b/src/main/java/gregtech/common/render/GT_SidedTexture.java index fbd5927467..4fbc28374a 100644 --- a/src/main/java/gregtech/common/render/GT_SidedTexture.java +++ b/src/main/java/gregtech/common/render/GT_SidedTexture.java @@ -17,9 +17,17 @@ public class GT_SidedTexture extends GT_TextureBase implements ITexture, IColorM */ 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[]{ + mTextures = new ITexture[] { TextureFactory.of(aIcon0, aRGBa, aAllowAlpha), TextureFactory.of(aIcon1, aRGBa, aAllowAlpha), TextureFactory.of(aIcon2, aRGBa, aAllowAlpha), @@ -34,35 +42,35 @@ public class GT_SidedTexture extends GT_TextureBase implements ITexture, IColorM public boolean isOldTexture() { return false; } - + @Override public void renderXPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { - mTextures[5].renderXPos(aRenderer, aBlock, aX ,aY, aZ); + mTextures[5].renderXPos(aRenderer, aBlock, aX, aY, aZ); } @Override public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { - mTextures[4].renderXNeg(aRenderer, aBlock, aX ,aY, aZ); + mTextures[4].renderXNeg(aRenderer, aBlock, aX, aY, aZ); } @Override public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { - mTextures[1].renderYPos(aRenderer, aBlock, aX ,aY, aZ); + mTextures[1].renderYPos(aRenderer, aBlock, aX, aY, aZ); } @Override public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { - mTextures[0].renderYNeg(aRenderer, aBlock, aX ,aY, aZ); + mTextures[0].renderYNeg(aRenderer, aBlock, aX, aY, aZ); } @Override public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { - mTextures[3].renderZPos(aRenderer, aBlock, aX ,aY, aZ); + mTextures[3].renderZPos(aRenderer, aBlock, aX, aY, aZ); } @Override public void renderZNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) { - mTextures[2].renderZNeg(aRenderer, aBlock, aX ,aY, aZ); + mTextures[2].renderZNeg(aRenderer, aBlock, aX, aY, aZ); } @Override diff --git a/src/main/java/gregtech/common/render/GT_TextureBase.java b/src/main/java/gregtech/common/render/GT_TextureBase.java index b5b867810b..bb39410a8e 100644 --- a/src/main/java/gregtech/common/render/GT_TextureBase.java +++ b/src/main/java/gregtech/common/render/GT_TextureBase.java @@ -7,7 +7,7 @@ import net.minecraft.client.renderer.Tessellator; public abstract class GT_TextureBase implements ITexture { protected boolean isDrawing = false; - + @Override public void startDrawingQuads(RenderBlocks aRenderer, float aNormalX, float aNormalY, float aNormalZ) { if (aRenderer.useInventoryTint && (!isOldTexture() || !GT_UtilityClient.isDrawing(Tessellator.instance))) { diff --git a/src/main/java/gregtech/common/render/GT_TextureBuilder.java b/src/main/java/gregtech/common/render/GT_TextureBuilder.java index 708720ad40..f2ff07523c 100644 --- a/src/main/java/gregtech/common/render/GT_TextureBuilder.java +++ b/src/main/java/gregtech/common/render/GT_TextureBuilder.java @@ -6,12 +6,11 @@ import gregtech.api.enums.GT_Values; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.ITextureBuilder; -import net.minecraft.block.Block; -import net.minecraftforge.common.util.ForgeDirection; - 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") public class GT_TextureBuilder implements ITextureBuilder { @@ -111,8 +110,7 @@ public class GT_TextureBuilder implements ITextureBuilder { if (fromBlock != null) { if (worldCoord == Boolean.TRUE || worldCoord == null && isCTMBlock(fromBlock, fromMeta)) return new GT_CopiedCTMBlockTexture(fromBlock, fromSide.ordinal(), fromMeta, rgba, allowAlpha); - else - return new GT_CopiedBlockTexture(fromBlock, fromSide.ordinal(), fromMeta, rgba, allowAlpha); + else return new GT_CopiedBlockTexture(fromBlock, fromSide.ordinal(), fromMeta, rgba, allowAlpha); } if (!textureLayers.isEmpty()) return new GT_MultiTexture(textureLayers.toArray(new ITexture[0])); switch (iconContainerList.size()) { @@ -126,14 +124,16 @@ public class GT_TextureBuilder implements ITextureBuilder { iconContainerList.get(ForgeDirection.SOUTH.ordinal()), iconContainerList.get(ForgeDirection.WEST.ordinal()), iconContainerList.get(ForgeDirection.EAST.ordinal()), - rgba, allowAlpha); + rgba, + allowAlpha); default: throw new IllegalStateException("Invalid sideIconContainer count"); } } 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 6d2ba999d5..a29ea6b6f9 100644 --- a/src/main/java/gregtech/common/render/IRenderedBlock.java +++ b/src/main/java/gregtech/common/render/IRenderedBlock.java @@ -31,11 +31,15 @@ public interface IRenderedBlock { /** returning true stops all the other Rendering from happening. */ @SideOnly(Side.CLIENT) - default boolean renderItem(Block aBlock, RenderBlocks aRenderer) { return false; } + default boolean renderItem(Block aBlock, RenderBlocks aRenderer) { + return false; + } /** returning true stops all the other Rendering from happening. */ @SideOnly(Side.CLIENT) - default boolean renderBlock(Block aBlock, RenderBlocks aRenderer, IBlockAccess aWorld, int aX, int aY, int aZ) { return false; } + default boolean renderBlock(Block aBlock, RenderBlocks aRenderer, IBlockAccess aWorld, int aX, int aY, int aZ) { + return false; + } /** if this Block lets the TileEntity or a similar Handler do all the Inventory Render work. */ @SideOnly(Side.CLIENT) @@ -48,14 +52,47 @@ public interface IRenderedBlock { class ErrorRenderer implements IRenderedBlockSideCheck, IRenderedBlock { public static final ErrorRenderer INSTANCE = new ErrorRenderer(); public ITexture[] mErrorTexture = Textures.BlockIcons.ERROR_RENDERING; - @Override public ITexture[] getTexture(Block aBlock, byte aSide, int aRenderPass, boolean[] aShouldSideBeRendered) {return mErrorTexture;} - @Override public ITexture[] getTexture(Block aBlock, byte aSide, boolean isActive, int aRenderPass) {return mErrorTexture;} - @Override public int getRenderPasses(Block aBlock) {return 1;} - @Override public boolean usesRenderPass(int aRenderPass) {return true;} - @Override public boolean setBlockBounds(Block aBlock, int aRenderPass) {aBlock.setBlockBounds(-0.25F, -0.25F, -0.25F, 1.25F, 1.25F, 1.25F); return true;} - @Override public boolean renderFullBlockSide(Block aBlock, RenderBlocks aRenderer, byte aSide) {return true;} - @Override public IRenderedBlock passRenderingToObject(ItemStack aStack) {return this;} - @Override public IRenderedBlock passRenderingToObject(IBlockAccess aWorld, int aX, int aY, int aZ) {return this;} + + @Override + public ITexture[] getTexture(Block aBlock, byte aSide, int aRenderPass, boolean[] aShouldSideBeRendered) { + return mErrorTexture; + } + + @Override + public ITexture[] getTexture(Block aBlock, byte aSide, boolean isActive, int aRenderPass) { + return mErrorTexture; + } + + @Override + public int getRenderPasses(Block aBlock) { + return 1; + } + + @Override + public boolean usesRenderPass(int aRenderPass) { + return true; + } + + @Override + public boolean setBlockBounds(Block aBlock, int aRenderPass) { + aBlock.setBlockBounds(-0.25F, -0.25F, -0.25F, 1.25F, 1.25F, 1.25F); + return true; + } + + @Override + public boolean renderFullBlockSide(Block aBlock, RenderBlocks aRenderer, byte aSide) { + return true; + } + + @Override + public IRenderedBlock passRenderingToObject(ItemStack aStack) { + return this; + } + + @Override + public IRenderedBlock passRenderingToObject(IBlockAccess aWorld, int aX, int aY, int aZ) { + return this; + } @Override public boolean renderBlock(Block aBlock, RenderBlocks aRenderer, IBlockAccess aWorld, int aX, int aY, int aZ) { 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 bd508a49a5..26115592f3 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 @@ -1,11 +1,15 @@ 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; @@ -16,19 +20,14 @@ import net.minecraftforge.client.IItemRenderer; import net.minecraftforge.fluids.FluidStack; import org.lwjgl.opengl.GL11; -import javax.annotation.Nullable; - -import static gregtech.api.enums.ItemList.*; -import static gregtech.api.enums.ItemList.Large_Fluid_Cell_Chrome; - public class GT_GeneratedItem_Renderer implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return type == ItemRenderType.EQUIPPED - || type == ItemRenderType.EQUIPPED_FIRST_PERSON - || type == ItemRenderType.INVENTORY - || type == ItemRenderType.ENTITY; + || type == ItemRenderType.EQUIPPED_FIRST_PERSON + || type == ItemRenderType.INVENTORY + || type == ItemRenderType.ENTITY; } @Override @@ -57,7 +56,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 { @@ -67,8 +67,7 @@ public class GT_GeneratedItem_Renderer implements IItemRenderer { tIcon = aItem.mIconList[(aMetaData - aItem.mOffset)][0]; } - if (tIcon == null) - tIcon = Textures.ItemIcons.RENDERING_ERROR.getIcon(); + if (tIcon == null) tIcon = Textures.ItemIcons.RENDERING_ERROR.getIcon(); ItemList largeFluidCell = getLargeFluidCell(aStack); if (largeFluidCell != null) { @@ -80,7 +79,15 @@ public class GT_GeneratedItem_Renderer implements IItemRenderer { if (type.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tIcon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tIcon.getMaxU(), tIcon.getMinV(), tIcon.getMinU(), tIcon.getMaxV(), tIcon.getIconWidth(), tIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tIcon.getMaxU(), + tIcon.getMinV(), + tIcon.getMinU(), + tIcon.getMaxV(), + tIcon.getIconWidth(), + tIcon.getIconHeight(), + 0.0625F); } GL11.glDisable(GL11.GL_BLEND); } @@ -100,7 +107,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; @@ -118,7 +126,15 @@ public class GT_GeneratedItem_Renderer implements IItemRenderer { if (type.equals(ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(inner, 16.0D, -0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, inner.getMaxU(), inner.getMinV(), inner.getMinU(), inner.getMaxV(), inner.getIconWidth(), inner.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + inner.getMaxU(), + inner.getMinV(), + inner.getMinU(), + inner.getMaxV(), + inner.getIconWidth(), + inner.getIconHeight(), + 0.0625F); } FluidStack fluidStack = GT_Utility.getFluidForFilledItem(stack, true); @@ -134,7 +150,15 @@ public class GT_GeneratedItem_Renderer implements IItemRenderer { if (type.equals(ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(fluidIcon, 16.0D, -0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, fluidIcon.getMaxU(), fluidIcon.getMinV(), fluidIcon.getMinU(), fluidIcon.getMaxV(), fluidIcon.getIconWidth(), fluidIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + fluidIcon.getMaxU(), + fluidIcon.getMinV(), + fluidIcon.getMinU(), + fluidIcon.getMaxV(), + fluidIcon.getIconWidth(), + fluidIcon.getIconHeight(), + 0.0625F); } GL11.glColor3ub((byte) -1, (byte) -1, (byte) -1); 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 59eba76d03..6a2535559e 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 @@ -19,9 +19,9 @@ public class GT_GeneratedMaterial_Renderer implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return type == ItemRenderType.EQUIPPED - || type == ItemRenderType.EQUIPPED_FIRST_PERSON - || type == ItemRenderType.INVENTORY - || type == ItemRenderType.ENTITY; + || type == ItemRenderType.EQUIPPED_FIRST_PERSON + || type == ItemRenderType.INVENTORY + || type == ItemRenderType.ENTITY; } @Override @@ -65,7 +65,15 @@ public class GT_GeneratedMaterial_Renderer implements IItemRenderer { if (type.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(tOverlay, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, tOverlay.getMaxU(), tOverlay.getMinV(), tOverlay.getMinU(), tOverlay.getMaxV(), tOverlay.getIconWidth(), tOverlay.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + tOverlay.getMaxU(), + tOverlay.getMinV(), + tOverlay.getMinU(), + tOverlay.getMaxV(), + tOverlay.getIconWidth(), + tOverlay.getIconHeight(), + 0.0625F); } } @@ -83,9 +91,16 @@ public class GT_GeneratedMaterial_Renderer implements IItemRenderer { if (type.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(icon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + icon.getMaxU(), + icon.getMinV(), + icon.getMinU(), + icon.getMaxV(), + icon.getIconWidth(), + icon.getIconHeight(), + 0.0625F); } - } public void renderContainedFluid(ItemRenderType type, FluidStack aFluidStack, IIcon fluidIcon) { @@ -98,9 +113,16 @@ public class GT_GeneratedMaterial_Renderer implements IItemRenderer { if (type.equals(IItemRenderer.ItemRenderType.INVENTORY)) { GT_RenderUtil.renderItemIcon(fluidIcon, 16.0D, 0.001D, 0.0F, 0.0F, -1.0F); } else { - ItemRenderer.renderItemIn2D(Tessellator.instance, fluidIcon.getMaxU(), fluidIcon.getMinV(), fluidIcon.getMinU(), fluidIcon.getMaxV(), fluidIcon.getIconWidth(), fluidIcon.getIconHeight(), 0.0625F); + ItemRenderer.renderItemIn2D( + Tessellator.instance, + fluidIcon.getMaxU(), + fluidIcon.getMinV(), + fluidIcon.getMinU(), + fluidIcon.getMaxV(), + fluidIcon.getIconWidth(), + fluidIcon.getIconHeight(), + 0.0625F); } GL11.glDepthFunc(GL11.GL_LEQUAL); } - } 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 ebabb2167a..8e23a0005d 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 @@ -10,7 +10,8 @@ import org.lwjgl.opengl.GL11; 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() { @@ -62,5 +63,4 @@ public class GT_MetaGenerated_Item_Renderer implements IItemRenderer { return mItemRenderer; } - } |