From defc41f5d166c80b47f795f7f0aa5188d2005da3 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Sun, 4 Aug 2013 17:16:40 -0700 Subject: [PATCH] More stuff for Soaryn --- .../buildcraft/core/render/FluidRenderer.java | 20 +++------------- .../transport/render/RenderPipe.java | 24 +++++++++---------- 2 files changed, 15 insertions(+), 29 deletions(-) diff --git a/common/buildcraft/core/render/FluidRenderer.java b/common/buildcraft/core/render/FluidRenderer.java index eaa3f1b9..dd76870a 100644 --- a/common/buildcraft/core/render/FluidRenderer.java +++ b/common/buildcraft/core/render/FluidRenderer.java @@ -11,6 +11,7 @@ import buildcraft.core.render.RenderEntityBlock.BlockInterface; import java.util.HashMap; import java.util.Map; import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GLAllocation; import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.util.Icon; @@ -32,21 +33,6 @@ public class FluidRenderer { public static final int DISPLAY_STAGES = 100; private static final BlockInterface liquidBlock = new BlockInterface(); - public static class MissingFluidTextureException extends RuntimeException { - - private final Fluid fluid; - - public MissingFluidTextureException(Fluid fluid) { - super(); - this.fluid = fluid; - } - - @Override - public String getMessage() { - return String.format("Fluid %s has no icon. Please contact the author of the mod the fluid came from.", fluid.getName()); - } - } - public static Icon getFluidTexture(FluidStack fluidStack, boolean flowing) { if (fluidStack == null) { return null; @@ -60,7 +46,7 @@ public class FluidRenderer { } Icon icon = flowing ? fluid.getFlowingIcon() : fluid.getStillIcon(); if (icon == null) { - throw new MissingFluidTextureException(fluid); + icon = ((TextureMap) Minecraft.getMinecraft().func_110434_K().func_110581_b(TextureMap.field_110575_b)).func_110572_b("missingno"); } return icon; } @@ -78,7 +64,7 @@ public class FluidRenderer { public static void setColorForFluidStack(FluidStack fluidstack) { if (fluidstack == null) return; - + int color = fluidstack.getFluid().getColor(fluidstack); float red = (float) (color >> 16 & 255) / 255.0F; float green = (float) (color >> 8 & 255) / 255.0F; diff --git a/common/buildcraft/transport/render/RenderPipe.java b/common/buildcraft/transport/render/RenderPipe.java index 16754c69..2319f511 100644 --- a/common/buildcraft/transport/render/RenderPipe.java +++ b/common/buildcraft/transport/render/RenderPipe.java @@ -307,8 +307,8 @@ public class RenderPipe extends TileEntitySpecialRenderer { boolean needsRender = false; for (int i = 0; i < 7; ++i) { - FluidStack liquid = trans.renderCache[i]; - if (liquid != null && liquid.amount > 0) { + FluidStack fluidStack = trans.renderCache[i]; + if (fluidStack != null && fluidStack.amount > 0) { needsRender = true; break; } @@ -331,16 +331,16 @@ public class RenderPipe extends TileEntitySpecialRenderer { boolean sides = false, above = false; for (int i = 0; i < 6; ++i) { - FluidStack liquid = trans.renderCache[i]; + FluidStack fluidStack = trans.renderCache[i]; - if (liquid != null && liquid.amount > 0) { - DisplayFluidList d = getListFromBuffer(liquid, pipe.container.worldObj); + if (fluidStack != null && fluidStack.amount > 0) { + DisplayFluidList d = getListFromBuffer(fluidStack, pipe.container.worldObj); if (d == null) { continue; } - int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); + int stage = (int) ((float) fluidStack.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); GL11.glPushMatrix(); int list = 0; @@ -369,22 +369,22 @@ public class RenderPipe extends TileEntitySpecialRenderer { default: } func_110628_a(TextureMap.field_110575_b); - FluidRenderer.setColorForFluidStack(liquid); + FluidRenderer.setColorForFluidStack(fluidStack); GL11.glCallList(list); GL11.glPopMatrix(); } } // CENTER - FluidStack liquid = trans.renderCache[ForgeDirection.UNKNOWN.ordinal()]; + FluidStack fluidStack = trans.renderCache[ForgeDirection.UNKNOWN.ordinal()]; - if (liquid != null && liquid.amount > 0) { - DisplayFluidList d = getListFromBuffer(liquid, pipe.container.worldObj); + if (fluidStack != null && fluidStack.amount > 0) { + DisplayFluidList d = getListFromBuffer(fluidStack, pipe.container.worldObj); if (d != null) { - int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); + int stage = (int) ((float) fluidStack.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); func_110628_a(TextureMap.field_110575_b); - FluidRenderer.setColorForFluidStack(liquid); + FluidRenderer.setColorForFluidStack(fluidStack); if (above) { GL11.glCallList(d.centerVertical[stage]);