diff --git a/src/main/java/mekanism/api/MekanismConfig.java b/src/main/java/mekanism/api/MekanismConfig.java index 0835f5274..09c496577 100644 --- a/src/main/java/mekanism/api/MekanismConfig.java +++ b/src/main/java/mekanism/api/MekanismConfig.java @@ -44,6 +44,7 @@ public class MekanismConfig public static boolean holidays = true; public static double baseSoundVolume = 1; public static boolean machineEffects = true; + public static boolean oldTransmitterRender = false; } public static class usage diff --git a/src/main/java/mekanism/client/ClientProxy.java b/src/main/java/mekanism/client/ClientProxy.java index 4e3266f7e..3b49c6e73 100644 --- a/src/main/java/mekanism/client/ClientProxy.java +++ b/src/main/java/mekanism/client/ClientProxy.java @@ -188,6 +188,7 @@ public class ClientProxy extends CommonProxy client.holidays = Mekanism.configuration.get("client", "Holidays", true).getBoolean(true); client.baseSoundVolume = Mekanism.configuration.get("client", "SoundVolume", 1D).getDouble(1D); client.machineEffects = Mekanism.configuration.get("client", "MachineEffects", true).getBoolean(true); + client.oldTransmitterRender = Mekanism.configuration.get("client", "OldTransmitterRender", false).getBoolean(); if(Mekanism.configuration.hasChanged()) Mekanism.configuration.save(); diff --git a/src/main/java/mekanism/client/render/RenderPartTransmitter.java b/src/main/java/mekanism/client/render/RenderPartTransmitter.java index bb73d4867..f8a9d71ad 100644 --- a/src/main/java/mekanism/client/render/RenderPartTransmitter.java +++ b/src/main/java/mekanism/client/render/RenderPartTransmitter.java @@ -503,7 +503,6 @@ public class RenderPartTransmitter implements IIconSelfRegister public void renderSide(ForgeDirection side, PartSidedPipe transmitter) { - boolean connected = PartTransmitter.connectionMapContainsSide(transmitter.getAllCurrentConnections(), side); IIcon renderIcon = transmitter.getIconForSide(side); Colour c = null; diff --git a/src/main/java/mekanism/common/multipart/PartMechanicalPipe.java b/src/main/java/mekanism/common/multipart/PartMechanicalPipe.java index 2301b3889..e17056f3f 100644 --- a/src/main/java/mekanism/common/multipart/PartMechanicalPipe.java +++ b/src/main/java/mekanism/common/multipart/PartMechanicalPipe.java @@ -30,7 +30,7 @@ public class PartMechanicalPipe extends PartTransmitter implements /** The fake tank used for fluid transfer calculations. */ public FluidTank dummyTank = new FluidTank(FluidContainerRegistry.BUCKET_VOLUME); - public static TransmitterIcons pipeIcons = new TransmitterIcons(4, 1); + public static TransmitterIcons pipeIcons = new TransmitterIcons(4, 2); public float currentScale; @@ -200,7 +200,7 @@ public class PartMechanicalPipe extends PartTransmitter implements { pipeIcons.registerCenterIcons(register, new String[] {"MechanicalPipeBasic", "MechanicalPipeAdvanced", "MechanicalPipeElite", "MechanicalPipeUltimate"}); - pipeIcons.registerSideIcons(register, new String[] {"MechanicalPipeSide"}); + pipeIcons.registerSideIcons(register, new String[] {"MechanicalPipeVertical", "MechanicalPipeHorizontal"}); } @Override @@ -215,6 +215,12 @@ public class PartMechanicalPipe extends PartTransmitter implements return pipeIcons.getSideIcon(0); } + @Override + public IIcon getSideIconRotated() + { + return pipeIcons.getSideIcon(1); + } + @Override public TransmissionType getTransmissionType() { diff --git a/src/main/java/mekanism/common/multipart/PartPressurizedTube.java b/src/main/java/mekanism/common/multipart/PartPressurizedTube.java index b38b57b7e..3e81b7477 100644 --- a/src/main/java/mekanism/common/multipart/PartPressurizedTube.java +++ b/src/main/java/mekanism/common/multipart/PartPressurizedTube.java @@ -23,7 +23,7 @@ import cpw.mods.fml.relauncher.SideOnly; public class PartPressurizedTube extends PartTransmitter implements IGasHandler { - public static TransmitterIcons tubeIcons = new TransmitterIcons(1, 1); + public static TransmitterIcons tubeIcons = new TransmitterIcons(1, 2); public float currentScale; @@ -199,7 +199,7 @@ public class PartPressurizedTube extends PartTransmitter implements public static void registerIcons(IIconRegister register) { tubeIcons.registerCenterIcons(register, new String[] {"PressurizedTube"}); - tubeIcons.registerSideIcons(register, new String[] {"TransmitterSideSmall"}); + tubeIcons.registerSideIcons(register, new String[] {"SmallTransmitterVertical", "SmallTransmitterHorizontal"}); } @Override @@ -214,6 +214,12 @@ public class PartPressurizedTube extends PartTransmitter implements return tubeIcons.getSideIcon(0); } + @Override + public IIcon getSideIconRotated() + { + return tubeIcons.getSideIcon(1); + } + @Override public TransmissionType getTransmissionType() { diff --git a/src/main/java/mekanism/common/multipart/PartRestrictiveTransporter.java b/src/main/java/mekanism/common/multipart/PartRestrictiveTransporter.java index 16da62d82..09142fd74 100644 --- a/src/main/java/mekanism/common/multipart/PartRestrictiveTransporter.java +++ b/src/main/java/mekanism/common/multipart/PartRestrictiveTransporter.java @@ -25,7 +25,13 @@ public class PartRestrictiveTransporter extends PartLogisticalTransporter @Override public IIcon getSideIcon() { - return transporterIcons.getSideIcon(1); + return transporterIcons.getSideIcon(2); + } + + @Override + public IIcon getSideIconRotated() + { + return transporterIcons.getSideIcon(3); } @Override diff --git a/src/main/java/mekanism/common/multipart/PartSidedPipe.java b/src/main/java/mekanism/common/multipart/PartSidedPipe.java index cda19f65c..c23e064c4 100644 --- a/src/main/java/mekanism/common/multipart/PartSidedPipe.java +++ b/src/main/java/mekanism/common/multipart/PartSidedPipe.java @@ -12,6 +12,7 @@ import java.util.Set; import mekanism.api.Coord4D; import mekanism.api.EnumColor; import mekanism.api.IConfigurable; +import mekanism.api.MekanismConfig.client; import mekanism.api.transmitters.IBlockableConnection; import mekanism.api.transmitters.ITransmitter; import mekanism.api.transmitters.TransmissionType; @@ -133,6 +134,8 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart, public abstract IIcon getSideIcon(); + public abstract IIcon getSideIconRotated(); + @Override public void update() { @@ -162,6 +165,17 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart, if(type == ConnectionType.NONE) { + if(client.oldTransmitterRender) + return getCenterIcon(); + if(getAllCurrentConnections() == 3 && side != ForgeDirection.DOWN && side != ForgeDirection.UP) + return getSideIcon(); + if(getAllCurrentConnections() == 12 && (side == ForgeDirection.DOWN || side == ForgeDirection.UP)) + return getSideIcon(); + if(getAllCurrentConnections() == 12 && (side == ForgeDirection.EAST || side == ForgeDirection.WEST)) + return getSideIconRotated(); + if(getAllCurrentConnections() == 48 && side != ForgeDirection.EAST && side != ForgeDirection.WEST) + return getSideIconRotated(); + return getCenterIcon(); } else { diff --git a/src/main/java/mekanism/common/multipart/PartUniversalCable.java b/src/main/java/mekanism/common/multipart/PartUniversalCable.java index 545ba9d76..0b6fdd3ff 100644 --- a/src/main/java/mekanism/common/multipart/PartUniversalCable.java +++ b/src/main/java/mekanism/common/multipart/PartUniversalCable.java @@ -44,7 +44,7 @@ public class PartUniversalCable extends PartTransmitter implement /** A fake power handler used to initiate energy transfer calculations. */ public PowerHandler powerHandler; - public static TransmitterIcons cableIcons = new TransmitterIcons(4, 1); + public static TransmitterIcons cableIcons = new TransmitterIcons(4, 2); public double currentPower = 0; @@ -176,7 +176,7 @@ public class PartUniversalCable extends PartTransmitter implement { cableIcons.registerCenterIcons(register, new String[] {"UniversalCableBasic", "UniversalCableAdvanced", "UniversalCableElite", "UniversalCableUltimate"}); - cableIcons.registerSideIcons(register, new String[] {"TransmitterSideSmall"}); + cableIcons.registerSideIcons(register, new String[] {"SmallTransmitterVertical", "SmallTransmitterHorizontal"}); } @Override @@ -198,6 +198,12 @@ public class PartUniversalCable extends PartTransmitter implement return cableIcons.getSideIcon(0); } + @Override + public IIcon getSideIconRotated() + { + return cableIcons.getSideIcon(1); + } + @Override public TransmissionType getTransmissionType() { diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterHorzontal.png b/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterHorzontal.png new file mode 100644 index 000000000..4d4e0a510 Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterHorzontal.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterSide.png b/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterSide.png deleted file mode 100644 index d63d60bbd..000000000 Binary files a/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterSide.png and /dev/null differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterVertical.png b/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterVertical.png new file mode 100644 index 000000000..fc05d6958 Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/LogisticalTransporterVertical.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeHorizontal.png b/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeHorizontal.png new file mode 100644 index 000000000..bab0e8bee Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeHorizontal.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeSide.png b/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeSide.png deleted file mode 100644 index 7a953c1fb..000000000 Binary files a/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeSide.png and /dev/null differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeVertical.png b/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeVertical.png new file mode 100644 index 000000000..7b532bed7 Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/MechanicalPipeVertical.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterHorizontal.png b/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterHorizontal.png new file mode 100644 index 000000000..536021b19 Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterHorizontal.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterSide.png b/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterSide.png deleted file mode 100644 index 862823301..000000000 Binary files a/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterSide.png and /dev/null differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterVertical.png b/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterVertical.png new file mode 100644 index 000000000..2badef84e Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/RestrictiveTransporterVertical.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/SmallTransmitterHorizontal.png b/src/main/resources/assets/mekanism/textures/blocks/models/SmallTransmitterHorizontal.png new file mode 100644 index 000000000..c3d8290c1 Binary files /dev/null and b/src/main/resources/assets/mekanism/textures/blocks/models/SmallTransmitterHorizontal.png differ diff --git a/src/main/resources/assets/mekanism/textures/blocks/models/TransmitterSideSmall.png b/src/main/resources/assets/mekanism/textures/blocks/models/SmallTransmitterVertical.png similarity index 70% rename from src/main/resources/assets/mekanism/textures/blocks/models/TransmitterSideSmall.png rename to src/main/resources/assets/mekanism/textures/blocks/models/SmallTransmitterVertical.png index a6debc302..3f9cd51f0 100644 Binary files a/src/main/resources/assets/mekanism/textures/blocks/models/TransmitterSideSmall.png and b/src/main/resources/assets/mekanism/textures/blocks/models/SmallTransmitterVertical.png differ