diff --git a/common/mekanism/common/TransporterStack.java b/common/mekanism/common/TransporterStack.java index 76101e7c6..70b9ae153 100644 --- a/common/mekanism/common/TransporterStack.java +++ b/common/mekanism/common/TransporterStack.java @@ -3,6 +3,7 @@ package mekanism.common; import java.util.ArrayList; import java.util.List; +import mekanism.api.EnumColor; import mekanism.api.Object3D; import mekanism.common.tileentity.TileEntityLogisticalTransporter; import net.minecraft.item.ItemStack; @@ -16,6 +17,8 @@ public class TransporterStack public int progress; + public EnumColor color; + public boolean initiatedPath = false; public List pathToTarget = new ArrayList(); @@ -31,6 +34,14 @@ public class TransporterStack public void write(TileEntityLogisticalTransporter tileEntity, ArrayList data) { + if(color != null) + { + data.add(color.ordinal()); + } + else { + data.add(-1); + } + data.add(progress); data.add(noTarget); @@ -52,6 +63,16 @@ public class TransporterStack public void read(ByteArrayDataInput dataStream) { + int c = dataStream.readInt(); + + if(c != -1) + { + color = EnumColor.values()[c]; + } + else { + color = null; + } + progress = dataStream.readInt(); noTarget = dataStream.readBoolean(); @@ -67,6 +88,11 @@ public class TransporterStack public void write(NBTTagCompound nbtTags) { + if(color != null) + { + nbtTags.setInteger("color", color.ordinal()); + } + nbtTags.setInteger("progress", progress); originalLocation.write(nbtTags); nbtTags.setBoolean("noTarget", noTarget); @@ -75,6 +101,11 @@ public class TransporterStack public void readFromNBT(NBTTagCompound nbtTags) { + if(nbtTags.hasKey("color")) + { + color = EnumColor.values()[nbtTags.getInteger("color")]; + } + progress = nbtTags.getInteger("progress"); originalLocation = Object3D.read(nbtTags); noTarget = nbtTags.getBoolean("noTarget"); diff --git a/common/mekanism/common/tileentity/TileEntityLogisticalTransporter.java b/common/mekanism/common/tileentity/TileEntityLogisticalTransporter.java index 91b4122c0..6258a0a52 100644 --- a/common/mekanism/common/tileentity/TileEntityLogisticalTransporter.java +++ b/common/mekanism/common/tileentity/TileEntityLogisticalTransporter.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.Set; +import mekanism.api.EnumColor; import mekanism.api.Object3D; import mekanism.api.transmitters.ITransmitter; import mekanism.api.transmitters.TransmissionType; @@ -32,6 +33,8 @@ public class TileEntityLogisticalTransporter extends TileEntityTransmitter transit = new HashSet(); public boolean needsSync = false; @@ -321,6 +324,16 @@ public class TileEntityLogisticalTransporter extends TileEntityTransmitter