diff --git a/common/mekanism/api/gas/GasNetwork.java b/common/mekanism/api/gas/GasNetwork.java index 96ee66603..994040778 100644 --- a/common/mekanism/api/gas/GasNetwork.java +++ b/common/mekanism/api/gas/GasNetwork.java @@ -126,7 +126,7 @@ public class GasNetwork extends DynamicNetwork transmitters.remove(conductor); } else { - conductor.setNetwork(this); + conductor.setTransmitterNetwork(this); } } diff --git a/common/mekanism/api/gas/GasTransmission.java b/common/mekanism/api/gas/GasTransmission.java index 91488244e..b4b8afef7 100644 --- a/common/mekanism/api/gas/GasTransmission.java +++ b/common/mekanism/api/gas/GasTransmission.java @@ -96,7 +96,7 @@ public final class GasTransmission if(TransmissionType.checkTransmissionType(pointer, TransmissionType.GAS, sender)) { - return ((ITransmitter)pointer).getNetwork().emit(amount, type, sender); + return ((ITransmitter)pointer).getTransmitterNetwork().emit(amount, type, sender); } return amount; @@ -122,7 +122,7 @@ public final class GasTransmission if(TransmissionType.checkTransmissionType(sideTile, TransmissionType.GAS, pointer)) { - networks.add(((ITransmitter)sideTile).getNetwork()); + networks.add(((ITransmitter)sideTile).getTransmitterNetwork()); } } diff --git a/common/mekanism/api/transmitters/DynamicNetwork.java b/common/mekanism/api/transmitters/DynamicNetwork.java index 023ec44b7..e42303fb8 100644 --- a/common/mekanism/api/transmitters/DynamicNetwork.java +++ b/common/mekanism/api/transmitters/DynamicNetwork.java @@ -111,7 +111,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork if(TransmissionType.checkTransmissionType(nodeTile, getTransmissionType(), (TileEntity) transmitter)) { - ((ITransmitter)nodeTile).removeFromNetwork(); + ((ITransmitter)nodeTile).removeFromTransmitterNetwork(); newTransporters.add((ITransmitter)nodeTile); } } diff --git a/common/mekanism/api/transmitters/ITransmitter.java b/common/mekanism/api/transmitters/ITransmitter.java index e1e7f5479..b6122fc9a 100644 --- a/common/mekanism/api/transmitters/ITransmitter.java +++ b/common/mekanism/api/transmitters/ITransmitter.java @@ -15,7 +15,7 @@ public interface ITransmitter * Gets the network currently in use by this transmitter segment. * @return network this transmitter is using */ - public N getNetwork(); + public N getTransmitterNetwork(); /** * Gets the network currently in use by this transmitter segment. @@ -24,37 +24,37 @@ public interface ITransmitter * if none is available * @return network this transmitter is using */ - public N getNetwork(boolean createIfNull); + public N getTransmitterNetwork(boolean createIfNull); /** * Sets this transmitter segment's network to a new value. * @param network - network to set to */ - public void setNetwork(N network); + public void setTransmitterNetwork(N network); /** * Refreshes the transmitter's network. */ - public void refreshNetwork(); + public void refreshTransmitterNetwork(); /** * Remove this transmitter from its network. */ - public void removeFromNetwork(); + public void removeFromTransmitterNetwork(); /** * Call this if you're worried a transmitter's network is messed up and you want * it to try and fix itself. */ - public void fixNetwork(); + public void fixTransmitterNetwork(); - public boolean areNetworksEqual(TileEntity tileEntity); + public boolean areTransmitterNetworksEqual(TileEntity tileEntity); - public int getNetworkSize(); + public int getTransmitterNetworkSize(); - public int getNetworkAcceptorSize(); + public int getTransmitterNetworkAcceptorSize(); - public String getNetworkNeeded(); + public String getTransmitterNetworkNeeded(); - public String getNetworkFlow(); + public String getTransmitterNetworkFlow(); } diff --git a/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java b/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java index 88f3fd2a6..e82b57ecb 100644 --- a/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java +++ b/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java @@ -140,7 +140,7 @@ public class TransmitterNetworkRegistry implements ITickHandler if(tileEntity instanceof ITransmitter) { - ((ITransmitter)tileEntity).refreshNetwork(); + ((ITransmitter)tileEntity).refreshTransmitterNetwork(); } } } diff --git a/common/mekanism/common/EnergyNetwork.java b/common/mekanism/common/EnergyNetwork.java index 5faca1028..268aa5ff8 100644 --- a/common/mekanism/common/EnergyNetwork.java +++ b/common/mekanism/common/EnergyNetwork.java @@ -220,7 +220,7 @@ public class EnergyNetwork extends DynamicNetwork transmitters.remove(conductor); } else { - conductor.setNetwork(this); + conductor.setTransmitterNetwork(this); } } diff --git a/common/mekanism/common/FluidNetwork.java b/common/mekanism/common/FluidNetwork.java index ee975e897..c94638ee0 100644 --- a/common/mekanism/common/FluidNetwork.java +++ b/common/mekanism/common/FluidNetwork.java @@ -150,7 +150,7 @@ public class FluidNetwork extends DynamicNetwork transmitters.remove(conductor); } else { - conductor.setNetwork(this); + conductor.setTransmitterNetwork(this); } } diff --git a/common/mekanism/common/InventoryNetwork.java b/common/mekanism/common/InventoryNetwork.java index 5087dd4ef..576078897 100644 --- a/common/mekanism/common/InventoryNetwork.java +++ b/common/mekanism/common/InventoryNetwork.java @@ -70,7 +70,7 @@ public class InventoryNetwork extends DynamicNetwork)transporter).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(transporter, getTransmissionType()) && ((ITransmitter)transporter).getTransmitterNetwork(false) != null) { - connectedNets.add(((ITransmitter)transporter).getNetwork()); + connectedNets.add(((ITransmitter)transporter).getTransmitterNetwork()); } } @@ -69,9 +69,9 @@ public class TileEntityLogisticalTransporter extends TileEntityTransmitter)tileEntity).getNetwork()); + getTransmitterNetwork().merge(((ITransmitter)tileEntity).getTransmitterNetwork()); } } - getNetwork().refresh(); + getTransmitterNetwork().refresh(); } } @@ -167,26 +167,26 @@ public class TileEntityLogisticalTransporter extends TileEntityTransmitter)pipe).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(pipe, getTransmissionType()) && ((ITransmitter)pipe).getTransmitterNetwork(false) != null) { - connectedNets.add(((ITransmitter)pipe).getNetwork()); + connectedNets.add(((ITransmitter)pipe).getTransmitterNetwork()); } } @@ -97,9 +97,9 @@ public class TileEntityMechanicalPipe extends TileEntityTransmitter)tileEntity).getNetwork()); + getTransmitterNetwork().merge(((ITransmitter)tileEntity).getTransmitterNetwork()); } } - getNetwork().refresh(); + getTransmitterNetwork().refresh(); } } @@ -169,7 +169,7 @@ public class TileEntityMechanicalPipe extends TileEntityTransmitter } @Override - public GasNetwork getNetwork(boolean createIfNull) + public GasNetwork getTransmitterNetwork(boolean createIfNull) { if(theNetwork == null && createIfNull) { @@ -37,9 +37,9 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter for(TileEntity tube : adjacentTubes) { - if(TransmissionType.checkTransmissionType(tube, TransmissionType.GAS, this) && ((ITransmitter)tube).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(tube, TransmissionType.GAS, this) && ((ITransmitter)tube).getTransmitterNetwork(false) != null) { - connectedNets.add(((ITransmitter)tube).getNetwork()); + connectedNets.add(((ITransmitter)tube).getTransmitterNetwork()); } } @@ -62,9 +62,9 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter } @Override - public void fixNetwork() + public void fixTransmitterNetwork() { - getNetwork().fixMessedUpNetwork(this); + getTransmitterNetwork().fixMessedUpNetwork(this); } @Override @@ -72,14 +72,14 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter { if(!worldObj.isRemote) { - getNetwork().split(this); + getTransmitterNetwork().split(this); } super.invalidate(); } @Override - public void removeFromNetwork() + public void removeFromTransmitterNetwork() { if(theNetwork != null) { @@ -88,7 +88,7 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter } @Override - public void refreshNetwork() + public void refreshTransmitterNetwork() { if(!worldObj.isRemote) { @@ -98,11 +98,11 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter if(TransmissionType.checkTransmissionType(tileEntity, TransmissionType.GAS, this)) { - getNetwork().merge(((ITransmitter)tileEntity).getNetwork()); + getTransmitterNetwork().merge(((ITransmitter)tileEntity).getTransmitterNetwork()); } } - getNetwork().refresh(); + getTransmitterNetwork().refresh(); } } @@ -132,27 +132,27 @@ public class TileEntityPressurizedTube extends TileEntityTransmitter } @Override - public int getNetworkSize() + public int getTransmitterNetworkSize() { - return getNetwork().getSize(); + return getTransmitterNetwork().getSize(); } @Override - public int getNetworkAcceptorSize() + public int getTransmitterNetworkAcceptorSize() { - return getNetwork().getAcceptorSize(); + return getTransmitterNetwork().getAcceptorSize(); } @Override - public String getNetworkNeeded() + public String getTransmitterNetworkNeeded() { - return getNetwork().getNeeded(); + return getTransmitterNetwork().getNeeded(); } @Override - public String getNetworkFlow() + public String getTransmitterNetworkFlow() { - return getNetwork().getFlow(); + return getTransmitterNetwork().getFlow(); } @Override diff --git a/common/mekanism/common/tileentity/TileEntityTransmitter.java b/common/mekanism/common/tileentity/TileEntityTransmitter.java index c17415ca5..279f14377 100644 --- a/common/mekanism/common/tileentity/TileEntityTransmitter.java +++ b/common/mekanism/common/tileentity/TileEntityTransmitter.java @@ -26,24 +26,24 @@ public abstract class TileEntityTransmitter extends TileEntity implements ITr } @Override - public void setNetwork(N network) + public void setTransmitterNetwork(N network) { if(network != theNetwork) { - removeFromNetwork(); + removeFromTransmitterNetwork(); theNetwork = network; } } @Override - public boolean areNetworksEqual(TileEntity tileEntity) + public boolean areTransmitterNetworksEqual(TileEntity tileEntity) { return tileEntity instanceof ITransmitter && getTransmissionType() == ((ITransmitter)tileEntity).getTransmissionType(); } @Override - public N getNetwork() + public N getTransmitterNetwork() { - return getNetwork(true); + return getTransmitterNetwork(true); } } diff --git a/common/mekanism/common/tileentity/TileEntityUniversalCable.java b/common/mekanism/common/tileentity/TileEntityUniversalCable.java index d123b1a0f..4eacf656c 100644 --- a/common/mekanism/common/tileentity/TileEntityUniversalCable.java +++ b/common/mekanism/common/tileentity/TileEntityUniversalCable.java @@ -4,8 +4,13 @@ import ic2.api.energy.tile.IEnergySink; import ic2.api.energy.tile.IEnergyTile; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashSet; +import java.util.Set; +import universalelectricity.core.block.IConductor; +import universalelectricity.core.electricity.ElectricityPack; +import universalelectricity.core.grid.IElectricityNetwork; import mekanism.api.Object3D; import mekanism.api.transmitters.ITransmitter; import mekanism.api.transmitters.TransmissionType; @@ -19,15 +24,19 @@ import buildcraft.api.power.IPowerReceptor; import buildcraft.api.power.PowerHandler; import buildcraft.api.power.PowerHandler.PowerReceiver; -public class TileEntityUniversalCable extends TileEntityTransmitter implements IPowerReceptor, IEnergyTile, IEnergySink +public class TileEntityUniversalCable extends TileEntityTransmitter implements IPowerReceptor, IEnergyTile, IEnergySink, IConductor { /** A fake power handler used to initiate energy transfer calculations. */ public PowerHandler powerHandler; + /** A fake UE ElectricityNetwork used to accept power from EU machines */ + public IElectricityNetwork ueNetwork; + public double energyScale; public TileEntityUniversalCable() { + ueNetwork = new FakeUENetwork(); powerHandler = new PowerHandler(this, PowerHandler.Type.STORAGE); powerHandler.configure(0, 100, 0, 100); } @@ -45,7 +54,7 @@ public class TileEntityUniversalCable extends TileEntityTransmitter)cable).getNetwork(false) != null) + if(TransmissionType.checkTransmissionType(cable, TransmissionType.ENERGY) && ((ITransmitter)cable).getTransmitterNetwork(false) != null) { - connectedNets.add(((ITransmitter)cable).getNetwork()); + connectedNets.add(((ITransmitter)cable).getTransmitterNetwork()); } } @@ -79,9 +88,9 @@ public class TileEntityUniversalCable extends TileEntityTransmitter)tileEntity).getNetwork()); + getTransmitterNetwork().merge(((ITransmitter)tileEntity).getTransmitterNetwork()); } } - getNetwork().refresh(); + getTransmitterNetwork().refresh(); } } @@ -157,7 +166,7 @@ public class TileEntityUniversalCable extends TileEntityTransmitter getPossibleDirections(TileEntity tile) + { + return new ArrayList(); + } + + @Override + public Set getConductors() + { + return new HashSet(); + } + + @Override + public Set getAcceptors() + { + return getTransmitterNetwork().getAcceptors(); + } + + @Override + public float produce(ElectricityPack electricityPack, TileEntity... ignoreTiles) + { + ArrayList ignore = new ArrayList(); + ignore.addAll(Arrays.asList(ignoreTiles)); + double energy = electricityPack.getWatts() * Mekanism.FROM_UE; + return (float)getTransmitterNetwork().emit(energy, ignore); + } + + @Override + public float getTotalResistance() + { + return 0; + } + + @Override + public ElectricityPack getRequest(TileEntity... ignoreTiles) + { + return ElectricityPack.getFromWatts((float)getTransmitterNetwork().getEnergyNeeded(new ArrayList()), 0.12F); + } + + @Override + public float getLowestCurrentCapacity() + { + return Integer.MAX_VALUE; + } } } \ No newline at end of file diff --git a/common/mekanism/common/util/CableUtils.java b/common/mekanism/common/util/CableUtils.java index 2947f83dc..038770d85 100644 --- a/common/mekanism/common/util/CableUtils.java +++ b/common/mekanism/common/util/CableUtils.java @@ -202,7 +202,7 @@ public final class CableUtils ArrayList ignored = new ArrayList(); ignored.add(sender); - return cable.getNetwork().emit(amount, ignored); + return cable.getTransmitterNetwork().emit(amount, ignored); } return amount; @@ -230,7 +230,7 @@ public final class CableUtils if(TransmissionType.checkTransmissionType(sideTile, TransmissionType.ENERGY) && !ignored.contains(sideTile)) { - networks.add(((ITransmitter)sideTile).getNetwork()); + networks.add(((ITransmitter)sideTile).getTransmitterNetwork()); } }