diff --git a/common/mekanism/api/DynamicNetwork.java b/common/mekanism/api/DynamicNetwork.java index 18bd84829..4e7cb6712 100644 --- a/common/mekanism/api/DynamicNetwork.java +++ b/common/mekanism/api/DynamicNetwork.java @@ -10,7 +10,6 @@ import java.util.Map; import java.util.NoSuchElementException; import java.util.Set; -import mekanism.common.MekanismUtils; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; @@ -109,7 +108,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork { TileEntity nodeTile = node.getTileEntity(((TileEntity)transmitter).worldObj); - if(MekanismUtils.checkTransmissionType(nodeTile, getTransmissionType())) + if(TransmissionType.checkTransmissionType(nodeTile, getTransmissionType())) { ((ITransmitter)nodeTile).removeFromNetwork(); newTransporters.add((ITransmitter)nodeTile); @@ -154,7 +153,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork public void loopAll(Object3D location) { - if(MekanismUtils.checkTransmissionType(location.getTileEntity(worldObj), transmissionType)) + if(TransmissionType.checkTransmissionType(location.getTileEntity(worldObj), transmissionType)) { iterated.add(location); } @@ -167,7 +166,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork { TileEntity tileEntity = obj.getTileEntity(worldObj); - if(MekanismUtils.checkTransmissionType(tileEntity, transmissionType)) + if(TransmissionType.checkTransmissionType(tileEntity, transmissionType)) { loopAll(obj); } diff --git a/common/mekanism/api/GasNetwork.java b/common/mekanism/api/GasNetwork.java index 1236871b5..7884dec9a 100644 --- a/common/mekanism/api/GasNetwork.java +++ b/common/mekanism/api/GasNetwork.java @@ -8,7 +8,6 @@ import java.util.Iterator; import java.util.List; import java.util.Set; -import mekanism.common.MekanismUtils; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.common.MinecraftForge; @@ -180,7 +179,7 @@ public class GasNetwork extends DynamicNetwork { TileEntity connectedBlockA = connectedBlocks[countOne]; - if(MekanismUtils.checkTransmissionType(connectedBlockA, TransmissionType.GAS) && !dealtWith[countOne]) + if(TransmissionType.checkTransmissionType(connectedBlockA, TransmissionType.GAS) && !dealtWith[countOne]) { NetworkFinder finder = new NetworkFinder(((TileEntity)splitPoint).worldObj, getTransmissionType(), Object3D.get(connectedBlockA), Object3D.get((TileEntity)splitPoint)); List partNetwork = finder.exploreNetwork(); @@ -189,7 +188,7 @@ public class GasNetwork extends DynamicNetwork { TileEntity connectedBlockB = connectedBlocks[countTwo]; - if(MekanismUtils.checkTransmissionType(connectedBlockB, TransmissionType.GAS) && !dealtWith[countTwo]) + if(TransmissionType.checkTransmissionType(connectedBlockB, TransmissionType.GAS) && !dealtWith[countTwo]) { if(partNetwork.contains(Object3D.get(connectedBlockB))) { @@ -204,7 +203,7 @@ public class GasNetwork extends DynamicNetwork { TileEntity nodeTile = node.getTileEntity(((TileEntity)splitPoint).worldObj); - if(MekanismUtils.checkTransmissionType(nodeTile, TransmissionType.GAS)) + if(TransmissionType.checkTransmissionType(nodeTile, TransmissionType.GAS)) { if(nodeTile != splitPoint) { diff --git a/common/mekanism/api/GasTransmission.java b/common/mekanism/api/GasTransmission.java index 5ae5060f2..4979e8729 100644 --- a/common/mekanism/api/GasTransmission.java +++ b/common/mekanism/api/GasTransmission.java @@ -3,7 +3,6 @@ package mekanism.api; import java.util.HashSet; import java.util.Set; -import mekanism.common.MekanismUtils; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; @@ -27,7 +26,7 @@ public final class GasTransmission { TileEntity tube = Object3D.get(tileEntity).getFromSide(orientation).getTileEntity(tileEntity.worldObj); - if(MekanismUtils.checkTransmissionType(tube, TransmissionType.GAS)) + if(TransmissionType.checkTransmissionType(tube, TransmissionType.GAS)) { tubes[orientation.ordinal()] = tube; } @@ -92,7 +91,7 @@ public final class GasTransmission { TileEntity pointer = Object3D.get(sender).getFromSide(facing).getTileEntity(sender.worldObj); - if(MekanismUtils.checkTransmissionType(pointer, TransmissionType.GAS)) + if(TransmissionType.checkTransmissionType(pointer, TransmissionType.GAS)) { return ((ITransmitter)pointer).getNetwork().emit(amount, type, sender); } @@ -118,7 +117,7 @@ public final class GasTransmission { TileEntity sideTile = Object3D.get(pointer).getFromSide(side).getTileEntity(pointer.worldObj); - if(MekanismUtils.checkTransmissionType(sideTile, TransmissionType.GAS)) + if(TransmissionType.checkTransmissionType(sideTile, TransmissionType.GAS)) { networks.add(((ITransmitter)sideTile).getNetwork()); } diff --git a/common/mekanism/api/TransmissionType.java b/common/mekanism/api/TransmissionType.java index 7c026ec36..e4faad1de 100644 --- a/common/mekanism/api/TransmissionType.java +++ b/common/mekanism/api/TransmissionType.java @@ -1,9 +1,29 @@ package mekanism.api; +import net.minecraft.tileentity.TileEntity; + public enum TransmissionType { ENERGY, FLUID, GAS, ITEM; + + public static boolean checkTransmissionType(TileEntity tileEntity, TransmissionType type) + { + return type.checkTransmissionType(tileEntity); + } + + public boolean checkTransmissionType(TileEntity tileEntity) + { + if(tileEntity instanceof ITransmitter) + { + if(((ITransmitter)tileEntity).getTransmissionType() == this) + { + return true; + } + } + + return false; + } } diff --git a/common/mekanism/common/CableUtils.java b/common/mekanism/common/CableUtils.java index cb58a6761..da5f239cb 100644 --- a/common/mekanism/common/CableUtils.java +++ b/common/mekanism/common/CableUtils.java @@ -59,7 +59,7 @@ public final class CableUtils { TileEntity cable = Object3D.get(tileEntity).getFromSide(orientation).getTileEntity(tileEntity.worldObj); - if(MekanismUtils.checkTransmissionType(cable, TransmissionType.ENERGY)) + if(TransmissionType.checkTransmissionType(cable, TransmissionType.ENERGY)) { cables[orientation.ordinal()] = cable; } @@ -193,7 +193,7 @@ public final class CableUtils { TileEntity pointer = Object3D.get(sender).getFromSide(facing).getTileEntity(sender.worldObj); - if(MekanismUtils.checkTransmissionType(pointer, TransmissionType.ENERGY)) + if(TransmissionType.checkTransmissionType(pointer, TransmissionType.ENERGY)) { ITransmitter cable = (ITransmitter)pointer; @@ -226,7 +226,7 @@ public final class CableUtils { TileEntity sideTile = Object3D.get(pointer).getFromSide(side).getTileEntity(pointer.worldObj); - if(MekanismUtils.checkTransmissionType(sideTile, TransmissionType.ENERGY) && !ignored.contains(sideTile)) + if(TransmissionType.checkTransmissionType(sideTile, TransmissionType.ENERGY) && !ignored.contains(sideTile)) { networks.add(((ITransmitter)sideTile).getNetwork()); } diff --git a/common/mekanism/common/EnergyNetwork.java b/common/mekanism/common/EnergyNetwork.java index 4fc6d2e7d..2a6c0c298 100644 --- a/common/mekanism/common/EnergyNetwork.java +++ b/common/mekanism/common/EnergyNetwork.java @@ -284,7 +284,7 @@ public class EnergyNetwork extends DynamicNetwork { TileEntity connectedBlockA = connectedBlocks[countOne]; - if(MekanismUtils.checkTransmissionType(connectedBlockA, TransmissionType.ENERGY) && !dealtWith[countOne]) + if(TransmissionType.checkTransmissionType(connectedBlockA, TransmissionType.ENERGY) && !dealtWith[countOne]) { NetworkFinder finder = new NetworkFinder(((TileEntity)splitPoint).worldObj, getTransmissionType(), Object3D.get(connectedBlockA), Object3D.get((TileEntity)splitPoint)); List partNetwork = finder.exploreNetwork(); @@ -293,7 +293,7 @@ public class EnergyNetwork extends DynamicNetwork { TileEntity connectedBlockB = connectedBlocks[countTwo]; - if(MekanismUtils.checkTransmissionType(connectedBlockB, TransmissionType.ENERGY) && !dealtWith[countTwo]) + if(TransmissionType.checkTransmissionType(connectedBlockB, TransmissionType.ENERGY) && !dealtWith[countTwo]) { if(partNetwork.contains(Object3D.get(connectedBlockB))) { @@ -308,7 +308,7 @@ public class EnergyNetwork extends DynamicNetwork { TileEntity nodeTile = node.getTileEntity(((TileEntity)splitPoint).worldObj); - if(MekanismUtils.checkTransmissionType(nodeTile, TransmissionType.ENERGY)) + if(TransmissionType.checkTransmissionType(nodeTile, TransmissionType.ENERGY)) { if(nodeTile != splitPoint) { diff --git a/common/mekanism/common/FluidNetwork.java b/common/mekanism/common/FluidNetwork.java index bc7759398..e36607914 100644 --- a/common/mekanism/common/FluidNetwork.java +++ b/common/mekanism/common/FluidNetwork.java @@ -207,7 +207,7 @@ public class FluidNetwork extends DynamicNetwork { TileEntity connectedBlockA = connectedBlocks[countOne]; - if(MekanismUtils.checkTransmissionType(connectedBlockA, TransmissionType.FLUID) && !dealtWith[countOne]) + if(TransmissionType.checkTransmissionType(connectedBlockA, TransmissionType.FLUID) && !dealtWith[countOne]) { NetworkFinder finder = new NetworkFinder(((TileEntity)splitPoint).worldObj, getTransmissionType(), Object3D.get(connectedBlockA), Object3D.get((TileEntity)splitPoint)); List partNetwork = finder.exploreNetwork(); @@ -216,7 +216,7 @@ public class FluidNetwork extends DynamicNetwork { TileEntity connectedBlockB = connectedBlocks[countTwo]; - if(MekanismUtils.checkTransmissionType(connectedBlockB, TransmissionType.FLUID) && !dealtWith[countTwo]) + if(TransmissionType.checkTransmissionType(connectedBlockB, TransmissionType.FLUID) && !dealtWith[countTwo]) { if(partNetwork.contains(Object3D.get(connectedBlockB))) { @@ -231,7 +231,7 @@ public class FluidNetwork extends DynamicNetwork { TileEntity nodeTile = node.getTileEntity(((TileEntity)splitPoint).worldObj); - if(MekanismUtils.checkTransmissionType(nodeTile, TransmissionType.FLUID)) + if(TransmissionType.checkTransmissionType(nodeTile, TransmissionType.FLUID)) { if(nodeTile != splitPoint) { diff --git a/common/mekanism/common/InventoryNetwork.java b/common/mekanism/common/InventoryNetwork.java index 3a6e7293f..dfe3b0a88 100644 --- a/common/mekanism/common/InventoryNetwork.java +++ b/common/mekanism/common/InventoryNetwork.java @@ -125,7 +125,7 @@ public class InventoryNetwork extends DynamicNetwork partNetwork = finder.exploreNetwork(); @@ -134,7 +134,7 @@ public class InventoryNetwork extends DynamicNetwork 0) { - if(MekanismUtils.checkTransmissionType(tileEntity, TransmissionType.ENERGY)) + if(TransmissionType.checkTransmissionType(tileEntity, TransmissionType.ENERGY)) { setEnergy(getEnergy() - (Math.min(getEnergy(), tier.OUTPUT) - CableUtils.emitEnergyToNetwork(Math.min(getEnergy(), tier.OUTPUT), this, ForgeDirection.getOrientation(facing)))); return; diff --git a/common/mekanism/common/TileEntityLogisticalTransporter.java b/common/mekanism/common/TileEntityLogisticalTransporter.java index 90e7be2f2..cae13041f 100644 --- a/common/mekanism/common/TileEntityLogisticalTransporter.java +++ b/common/mekanism/common/TileEntityLogisticalTransporter.java @@ -40,7 +40,7 @@ public class TileEntityLogisticalTransporter extends TileEntityTransmitter)transporter).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(transporter, getTransmissionType()) && ((ITransmitter)transporter).getNetwork(false) != null) { connectedNets.add(((ITransmitter)transporter).getNetwork()); } @@ -99,7 +99,7 @@ public class TileEntityLogisticalTransporter extends TileEntityTransmitter)tileEntity).getNetwork()); } diff --git a/common/mekanism/common/TileEntityMechanicalPipe.java b/common/mekanism/common/TileEntityMechanicalPipe.java index fab09d470..a9f9886b2 100644 --- a/common/mekanism/common/TileEntityMechanicalPipe.java +++ b/common/mekanism/common/TileEntityMechanicalPipe.java @@ -68,7 +68,7 @@ public class TileEntityMechanicalPipe extends TileEntityTransmitter)pipe).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(pipe, getTransmissionType()) && ((ITransmitter)pipe).getNetwork(false) != null) { connectedNets.add(((ITransmitter)pipe).getNetwork()); } @@ -127,7 +127,7 @@ public class TileEntityMechanicalPipe extends TileEntityTransmitter)tileEntity).getNetwork()); } diff --git a/common/mekanism/common/TileEntityPressurizedTube.java b/common/mekanism/common/TileEntityPressurizedTube.java index 51bc6158e..3db994597 100644 --- a/common/mekanism/common/TileEntityPressurizedTube.java +++ b/common/mekanism/common/TileEntityPressurizedTube.java @@ -36,7 +36,7 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter for(TileEntity tube : adjacentTubes) { - if(MekanismUtils.checkTransmissionType(tube, TransmissionType.GAS) && ((ITransmitter)tube).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(tube, TransmissionType.GAS) && ((ITransmitter)tube).getNetwork(false) != null) { connectedNets.add(((ITransmitter)tube).getNetwork()); } @@ -95,7 +95,7 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter { TileEntity tileEntity = Object3D.get(this).getFromSide(side).getTileEntity(worldObj); - if(MekanismUtils.checkTransmissionType(tileEntity, TransmissionType.GAS)) + if(TransmissionType.checkTransmissionType(tileEntity, TransmissionType.GAS)) { getNetwork().merge(((ITransmitter)tileEntity).getNetwork()); } diff --git a/common/mekanism/common/TileEntityUniversalCable.java b/common/mekanism/common/TileEntityUniversalCable.java index e009e18b2..70fe2c872 100644 --- a/common/mekanism/common/TileEntityUniversalCable.java +++ b/common/mekanism/common/TileEntityUniversalCable.java @@ -51,7 +51,7 @@ public class TileEntityUniversalCable extends TileEntityTransmitter)cable).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(cable, TransmissionType.ENERGY) && ((ITransmitter)cable).getNetwork(false) != null) { connectedNets.add(((ITransmitter)cable).getNetwork()); } @@ -110,7 +110,7 @@ public class TileEntityUniversalCable extends TileEntityTransmitter)tileEntity).getNetwork()); } diff --git a/common/mekanism/common/TransporterUtils.java b/common/mekanism/common/TransporterUtils.java index 69f5a0217..f1a8e9971 100644 --- a/common/mekanism/common/TransporterUtils.java +++ b/common/mekanism/common/TransporterUtils.java @@ -25,7 +25,7 @@ public final class TransporterUtils { TileEntity transporter = Object3D.get(tileEntity).getFromSide(orientation).getTileEntity(tileEntity.worldObj); - if(MekanismUtils.checkTransmissionType(transporter, TransmissionType.ITEM)) + if(TransmissionType.checkTransmissionType(transporter, TransmissionType.ITEM)) { transporters[orientation.ordinal()] = transporter; } diff --git a/common/mekanism/generators/common/TileEntityGenerator.java b/common/mekanism/generators/common/TileEntityGenerator.java index b663261e5..e996ffaf2 100644 --- a/common/mekanism/generators/common/TileEntityGenerator.java +++ b/common/mekanism/generators/common/TileEntityGenerator.java @@ -101,7 +101,7 @@ public abstract class TileEntityGenerator extends TileEntityElectricBlock implem { if(!worldObj.isRemote) { - if(MekanismUtils.checkTransmissionType(tileEntity, TransmissionType.ENERGY)) + if(TransmissionType.checkTransmissionType(tileEntity, TransmissionType.ENERGY)) { setEnergy(getEnergy() - (Math.min(getEnergy(), output) - CableUtils.emitEnergyToNetwork(Math.min(getEnergy(), output), this, ForgeDirection.getOrientation(facing)))); return;