From ffd683a3f3debbf6423e78bc4edd0c8bd059d3d0 Mon Sep 17 00:00:00 2001 From: "Aidan C. Brady" Date: Tue, 17 Dec 2013 14:39:30 -0500 Subject: [PATCH] Fixed rendering --- common/mekanism/api/gas/GasNetwork.java | 5 ++-- common/mekanism/api/gas/GasTank.java | 2 +- .../client/render/RenderPartTransmitter.java | 2 +- common/mekanism/common/FluidNetwork.java | 3 +- .../common/multipart/MultipartMekanism.java | 1 + .../common/multipart/PartMechanicalPipe.java | 29 +++++++++---------- .../common/multipart/PartPressurizedTube.java | 6 ++-- .../common/multipart/PartUniversalCable.java | 6 ++-- .../network/PacketTransmitterUpdate.java | 1 + 9 files changed, 26 insertions(+), 29 deletions(-) diff --git a/common/mekanism/api/gas/GasNetwork.java b/common/mekanism/api/gas/GasNetwork.java index 7eb091903..c61069988 100644 --- a/common/mekanism/api/gas/GasNetwork.java +++ b/common/mekanism/api/gas/GasNetwork.java @@ -159,7 +159,6 @@ public class GasNetwork extends DynamicNetwork if(sent > 0 && FMLCommonHandler.instance().getEffectiveSide().isServer()) { - refGas = stack.getGas(); didTransfer = true; transferDelay = 2; } @@ -169,7 +168,7 @@ public class GasNetwork extends DynamicNetwork public synchronized int emit(GasStack stack) { - if(refGas != null && refGas != stack.getGas()) + if(gasStored != null && gasStored.getGas() != stack.getGas()) { return 0; } @@ -212,7 +211,7 @@ public class GasNetwork extends DynamicNetwork if(didTransfer != prevTransfer || needsUpdate) { - MinecraftForge.EVENT_BUS.post(new GasTransferEvent(this, refGas != null ? refGas.getID() : -1, didTransfer, getScale())); + MinecraftForge.EVENT_BUS.post(new GasTransferEvent(this, gasStored != null ? gasStored.getGas().getID() : -1, didTransfer, getScale())); needsUpdate = false; } diff --git a/common/mekanism/api/gas/GasTank.java b/common/mekanism/api/gas/GasTank.java index 1b716ce06..5b38cfdf7 100644 --- a/common/mekanism/api/gas/GasTank.java +++ b/common/mekanism/api/gas/GasTank.java @@ -114,7 +114,7 @@ public class GasTank { if(stored != null) { - stored.write(nbtTags); + nbtTags.setCompoundTag("stored", stored.write(new NBTTagCompound())); } nbtTags.setInteger("maxGas", maxGas); diff --git a/common/mekanism/client/render/RenderPartTransmitter.java b/common/mekanism/client/render/RenderPartTransmitter.java index 1c8080ab6..37a010408 100644 --- a/common/mekanism/client/render/RenderPartTransmitter.java +++ b/common/mekanism/client/render/RenderPartTransmitter.java @@ -341,7 +341,7 @@ public class RenderPartTransmitter implements IIconRegister for(ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) { - renderSide(side, transmitter); + renderSide(side, transmitter); } } diff --git a/common/mekanism/common/FluidNetwork.java b/common/mekanism/common/FluidNetwork.java index 9b101e732..de14a77ae 100644 --- a/common/mekanism/common/FluidNetwork.java +++ b/common/mekanism/common/FluidNetwork.java @@ -160,7 +160,6 @@ public class FluidNetwork extends DynamicNetwork if(doTransfer && fluidSent > 0 && FMLCommonHandler.instance().getEffectiveSide().isServer()) { - refFluid = fluidToSend.getFluid(); didTransfer = true; transferDelay = 2; } @@ -216,7 +215,7 @@ public class FluidNetwork extends DynamicNetwork if(didTransfer != prevTransfer || needsUpdate) { - MinecraftForge.EVENT_BUS.post(new FluidTransferEvent(this, refFluid != null ? refFluid.getID() : -1, didTransfer, getScale())); + MinecraftForge.EVENT_BUS.post(new FluidTransferEvent(this, fluidStored != null ? fluidStored.getFluid().getID() : -1, didTransfer, getScale())); needsUpdate = false; } diff --git a/common/mekanism/common/multipart/MultipartMekanism.java b/common/mekanism/common/multipart/MultipartMekanism.java index 89452d1fb..25e8a24cd 100644 --- a/common/mekanism/common/multipart/MultipartMekanism.java +++ b/common/mekanism/common/multipart/MultipartMekanism.java @@ -21,6 +21,7 @@ public class MultipartMekanism implements IPartFactory, IPartConverter { MultiPartRegistry.registerConverter(this); MultiPartRegistry.registerParts(this, new String[] {"mekanism:universal_cable", "mekanism:mechanical_pipe", "mekanism:pressurized_tube", "mekanism:logistical_transporter"}); + MultipartGenerator.registerPassThroughInterface("mekanism.api.transmitters.ITransmitter"); MultipartGenerator.registerPassThroughInterface("ic2.api.energy.tile.IEnergySink"); MultipartGenerator.registerPassThroughInterface("cofh.api.energy.IEnergyHandler"); diff --git a/common/mekanism/common/multipart/PartMechanicalPipe.java b/common/mekanism/common/multipart/PartMechanicalPipe.java index 24e9c3e78..a89974fc3 100644 --- a/common/mekanism/common/multipart/PartMechanicalPipe.java +++ b/common/mekanism/common/multipart/PartMechanicalPipe.java @@ -37,9 +37,7 @@ public class PartMechanicalPipe extends PartTransmitter implements @Override public void onChunkUnload() - { - super.onChunkUnload(); - + { if(!world().isRemote) { if(lastWrite != null) @@ -55,6 +53,8 @@ public class PartMechanicalPipe extends PartTransmitter implements } } } + + super.onChunkUnload(); } @Override @@ -226,21 +226,18 @@ public class PartMechanicalPipe extends PartTransmitter implements { if(!world().isRemote) { - if(!world().isRemote) - { - if(cacheFluid != null) + if(cacheFluid != null) + { + if(getTransmitterNetwork().fluidStored == null) { - if(getTransmitterNetwork().fluidStored == null) - { - getTransmitterNetwork().fluidStored = cacheFluid; - } - else { - getTransmitterNetwork().fluidStored.amount += cacheFluid.amount; - } - - cacheFluid = null; + getTransmitterNetwork().fluidStored = cacheFluid; } - } + else { + getTransmitterNetwork().fluidStored.amount += cacheFluid.amount; + } + + cacheFluid = null; + } if(isActive) { diff --git a/common/mekanism/common/multipart/PartPressurizedTube.java b/common/mekanism/common/multipart/PartPressurizedTube.java index b1655b4d8..eb19f84ea 100644 --- a/common/mekanism/common/multipart/PartPressurizedTube.java +++ b/common/mekanism/common/multipart/PartPressurizedTube.java @@ -67,9 +67,7 @@ public class PartPressurizedTube extends PartTransmitter @Override public void onChunkUnload() - { - super.onChunkUnload(); - + { if(!world().isRemote) { if(lastWrite != null) @@ -85,6 +83,8 @@ public class PartPressurizedTube extends PartTransmitter } } } + + super.onChunkUnload(); } @Override diff --git a/common/mekanism/common/multipart/PartUniversalCable.java b/common/mekanism/common/multipart/PartUniversalCable.java index 896d8248e..f35d07118 100644 --- a/common/mekanism/common/multipart/PartUniversalCable.java +++ b/common/mekanism/common/multipart/PartUniversalCable.java @@ -185,9 +185,7 @@ public class PartUniversalCable extends PartTransmitter implement @Override public void onChunkUnload() - { - super.onChunkUnload(); - + { if(!world().isRemote) { Mekanism.ic2Registered.remove(Object3D.get(tile())); @@ -195,6 +193,8 @@ public class PartUniversalCable extends PartTransmitter implement getTransmitterNetwork().electricityStored -= lastWrite; } + + super.onChunkUnload(); } @Override diff --git a/common/mekanism/common/network/PacketTransmitterUpdate.java b/common/mekanism/common/network/PacketTransmitterUpdate.java index c4d6d20dc..24165568b 100644 --- a/common/mekanism/common/network/PacketTransmitterUpdate.java +++ b/common/mekanism/common/network/PacketTransmitterUpdate.java @@ -104,6 +104,7 @@ public class PacketTransmitterUpdate implements IMekanismPacket if(tileEntity != null) { + System.out.println("UPDATE " + gasType + " " + didGasTransfer + " " + scale); ((ITransmitter)tileEntity).getTransmitterNetwork().refGas = gasType; ((ITransmitter)tileEntity).getTransmitterNetwork().didTransfer = didGasTransfer; ((ITransmitter)tileEntity).getTransmitterNetwork().definedScale = scale;