Make Pressurized Tubes able to pull from IGasHandlers. Hopefully I didn't screw anything up too badly.
This commit is contained in:
parent
c66f3a44b7
commit
de880c5ab0
20 changed files with 102 additions and 77 deletions
|
@ -168,7 +168,7 @@ public class GasNetwork extends DynamicNetwork<IGasHandler, GasNetwork>
|
|||
remaining--;
|
||||
}
|
||||
|
||||
toSend -= acceptor.receiveGas(acceptorDirections.get(acceptor).getOpposite(), new GasStack(stack.getGas(), currentSending));
|
||||
toSend -= acceptor.receiveGas(acceptorDirections.get(acceptor).getOpposite(), new GasStack(stack.getGas(), currentSending), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -184,7 +184,7 @@ public class GasNetwork extends DynamicNetwork<IGasHandler, GasNetwork>
|
|||
return sent;
|
||||
}
|
||||
|
||||
public synchronized int emit(GasStack stack)
|
||||
public synchronized int emit(GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(gasStored != null && gasStored.getGas() != stack.getGas())
|
||||
{
|
||||
|
@ -193,13 +193,16 @@ public class GasNetwork extends DynamicNetwork<IGasHandler, GasNetwork>
|
|||
|
||||
int toUse = Math.min(getGasNeeded(), stack.amount);
|
||||
|
||||
if(gasStored == null)
|
||||
if(doTransfer)
|
||||
{
|
||||
gasStored = stack.copy();
|
||||
gasStored.amount = toUse;
|
||||
}
|
||||
else {
|
||||
gasStored.amount += toUse;
|
||||
if(gasStored == null)
|
||||
{
|
||||
gasStored = stack.copy();
|
||||
gasStored.amount = toUse;
|
||||
}
|
||||
else {
|
||||
gasStored.amount += toUse;
|
||||
}
|
||||
}
|
||||
|
||||
return toUse;
|
||||
|
|
|
@ -14,14 +14,14 @@ public interface IGasHandler
|
|||
* @param stack - gas to add
|
||||
* @return gas added
|
||||
*/
|
||||
public int receiveGas(ForgeDirection side, GasStack stack);
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer);
|
||||
|
||||
/**
|
||||
* Draws a certain amount of gas from this block.
|
||||
* @param amount - amount to draw
|
||||
* @return gas drawn
|
||||
*/
|
||||
public GasStack drawGas(ForgeDirection side, int amount);
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer);
|
||||
|
||||
/**
|
||||
* Whether or not this block can accept gas from a certain side.
|
||||
|
|
|
@ -57,6 +57,27 @@ public class PartPressurizedTube extends PartTransmitter<GasNetwork> implements
|
|||
MekanismUtils.saveChunk(tile());
|
||||
}
|
||||
}
|
||||
|
||||
IGasHandler[] connectedAcceptors = GasTransmission.getConnectedAcceptors(tile());
|
||||
|
||||
for(ForgeDirection side : getConnections(ConnectionType.PULL))
|
||||
{
|
||||
if(connectedAcceptors[side.ordinal()] != null)
|
||||
{
|
||||
IGasHandler container = connectedAcceptors[side.ordinal()];
|
||||
|
||||
if(container != null)
|
||||
{
|
||||
GasStack received = container.drawGas(side.getOpposite(), 100, false);
|
||||
|
||||
if(received != null && received.amount != 0)
|
||||
{
|
||||
container.drawGas(side.getOpposite(), getTransmitterNetwork().emit(received, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
float targetScale = getTransmitterNetwork().gasScale;
|
||||
|
@ -258,18 +279,18 @@ public class PartPressurizedTube extends PartTransmitter<GasNetwork> implements
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(getConnectionType(side) == ConnectionType.NORMAL || getConnectionType(side) == ConnectionType.PULL)
|
||||
{
|
||||
return getTransmitterNetwork().emit(stack);
|
||||
return getTransmitterNetwork().emit(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -78,15 +78,15 @@ public class SharedInventory implements IStrictEnergyStorage, IFluidHandler, IGa
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
return storedGas.receive(stack, true);
|
||||
return storedGas.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return storedGas.draw(amount, true);
|
||||
return storedGas.draw(amount, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -333,13 +333,13 @@ public abstract class TileEntityAdvancedElectricMachine extends TileEntityBasicM
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -394,18 +394,18 @@ public class TileEntityChemicalCrystallizer extends TileEntityElectricBlock impl
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(canReceiveGas(side, stack.getGas()))
|
||||
{
|
||||
return inputTank.receive(stack, true);
|
||||
return inputTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -165,7 +165,7 @@ public class TileEntityChemicalDissolutionChamber extends TileEntityElectricBloc
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getRight(facing).getOpposite(), outputTank.getGas().getGas()))
|
||||
{
|
||||
outputTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend), true);
|
||||
outputTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -409,18 +409,18 @@ public class TileEntityChemicalDissolutionChamber extends TileEntityElectricBloc
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(canReceiveGas(side, stack.getGas()))
|
||||
{
|
||||
return injectTank.receive(stack, true);
|
||||
return injectTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -136,7 +136,7 @@ public class TileEntityChemicalInfuser extends TileEntityElectricBlock implement
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(ForgeDirection.getOrientation(facing).getOpposite(), centerTank.getGas().getGas()))
|
||||
{
|
||||
centerTank.draw(((IGasHandler)tileEntity).receiveGas(ForgeDirection.getOrientation(facing).getOpposite(), toSend), true);
|
||||
centerTank.draw(((IGasHandler)tileEntity).receiveGas(ForgeDirection.getOrientation(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -388,22 +388,22 @@ public class TileEntityChemicalInfuser extends TileEntityElectricBlock implement
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(canReceiveGas(side, stack != null ? stack.getGas() : null))
|
||||
{
|
||||
return getTank(side).receive(stack, true);
|
||||
return getTank(side).receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
if(canDrawGas(side, null))
|
||||
{
|
||||
return getTank(side).draw(amount, true);
|
||||
return getTank(side).draw(amount, doTransfer);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
|
|
@ -43,11 +43,11 @@ public class TileEntityChemicalInjectionChamber extends TileEntityAdvancedElectr
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(isValidGas(stack.getGas()))
|
||||
{
|
||||
return gasTank.receive(stack, true);
|
||||
return gasTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -145,7 +145,7 @@ public class TileEntityChemicalOxidizer extends TileEntityElectricBlock implemen
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getRight(facing).getOpposite(), gasTank.getGas().getGas()))
|
||||
{
|
||||
gasTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend), true);
|
||||
gasTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -141,7 +141,7 @@ public class TileEntityChemicalWasher extends TileEntityElectricBlock implements
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getRight(facing).getOpposite(), outputTank.getGas().getGas()))
|
||||
{
|
||||
outputTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend), true);
|
||||
outputTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -457,22 +457,22 @@ public class TileEntityChemicalWasher extends TileEntityElectricBlock implements
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(canReceiveGas(side, stack != null ? stack.getGas() : null))
|
||||
{
|
||||
return getTank(side).receive(stack, true);
|
||||
return getTank(side).receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
if(canDrawGas(side, null))
|
||||
{
|
||||
return getTank(side).draw(amount, true);
|
||||
return getTank(side).draw(amount, doTransfer);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
|
|
@ -154,7 +154,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getLeft(facing).getOpposite(), leftTank.getGas().getGas()))
|
||||
{
|
||||
leftTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getLeft(facing).getOpposite(), toSend), true);
|
||||
leftTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getLeft(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -180,7 +180,7 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getRight(facing).getOpposite(), rightTank.getGas().getGas()))
|
||||
{
|
||||
rightTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend), true);
|
||||
rightTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getRight(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -645,21 +645,21 @@ public class TileEntityElectrolyticSeparator extends TileEntityElectricBlock imp
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
if(side == MekanismUtils.getLeft(facing))
|
||||
{
|
||||
return leftTank.draw(amount, true);
|
||||
return leftTank.draw(amount, doTransfer);
|
||||
}
|
||||
else if(side == MekanismUtils.getRight(facing))
|
||||
{
|
||||
return rightTank.draw(amount, true);
|
||||
return rightTank.draw(amount, doTransfer);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
|
|
@ -44,6 +44,7 @@ public class TileEntityEntangledBlock extends TileEntityElectricBlock implements
|
|||
public void setInventory(String frequency)
|
||||
{
|
||||
sharedInventory = SharedInventoryManager.getInventory(frequency);
|
||||
markDirty();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -152,15 +153,15 @@ public class TileEntityEntangledBlock extends TileEntityElectricBlock implements
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
return sharedInventory == null ? 0 : sharedInventory.receiveGas(side, stack);
|
||||
return sharedInventory == null ? 0 : sharedInventory.receiveGas(side, stack, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return sharedInventory == null ? null : sharedInventory.drawGas(side, amount);
|
||||
return sharedInventory == null ? null : sharedInventory.drawGas(side, amount, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -878,11 +878,11 @@ public class TileEntityFactory extends TileEntityElectricBlock implements IPerip
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(canReceiveGas(side, stack.getGas()))
|
||||
{
|
||||
return gasTank.receive(stack, true);
|
||||
return gasTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -901,7 +901,7 @@ public class TileEntityFactory extends TileEntityElectricBlock implements IPerip
|
|||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@ public class TileEntityGasTank extends TileEntityContainerBlock implements IGasH
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(ForgeDirection.getOrientation(facing).getOpposite(), gasTank.getGas().getGas()))
|
||||
{
|
||||
gasTank.draw(((IGasHandler)tileEntity).receiveGas(ForgeDirection.getOrientation(facing).getOpposite(), toSend), true);
|
||||
gasTank.draw(((IGasHandler)tileEntity).receiveGas(ForgeDirection.getOrientation(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -118,13 +118,13 @@ public class TileEntityGasTank extends TileEntityContainerBlock implements IGasH
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
return gasTank.receive(stack, true);
|
||||
return gasTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -121,7 +121,7 @@ public class TileEntityPRC extends TileEntityBasicMachine implements IFluidHandl
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getLeft(facing), outputGasTank.getGas().getGas()))
|
||||
{
|
||||
outputGasTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getLeft(facing), toSend), true);
|
||||
outputGasTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getLeft(facing), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -401,22 +401,22 @@ public class TileEntityPRC extends TileEntityBasicMachine implements IFluidHandl
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(side == MekanismUtils.getLeft(facing))
|
||||
{
|
||||
return inputGasTank.receive(stack, true);
|
||||
return inputGasTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
if(side == MekanismUtils.getRight(facing))
|
||||
{
|
||||
return outputGasTank.draw(amount, true);
|
||||
return outputGasTank.draw(amount, doTransfer);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
|
|
@ -42,11 +42,11 @@ public class TileEntityPurificationChamber extends TileEntityAdvancedElectricMac
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(stack.getGas() == GasRegistry.getGas("oxygen"))
|
||||
{
|
||||
return gasTank.receive(stack, true);
|
||||
return gasTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -192,7 +192,7 @@ public class TileEntityRotaryCondensentrator extends TileEntityElectricBlock imp
|
|||
{
|
||||
if(((IGasHandler)tileEntity).canReceiveGas(MekanismUtils.getLeft(facing).getOpposite(), gasTank.getGas().getGas()))
|
||||
{
|
||||
gasTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getLeft(facing).getOpposite(), toSend), true);
|
||||
gasTank.draw(((IGasHandler)tileEntity).receiveGas(MekanismUtils.getLeft(facing).getOpposite(), toSend, true), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -481,15 +481,15 @@ public class TileEntityRotaryCondensentrator extends TileEntityElectricBlock imp
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
return gasTank.receive(stack, true);
|
||||
return gasTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return gasTank.draw(amount, true);
|
||||
return gasTank.draw(amount, doTransfer);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -229,11 +229,11 @@ public class TileEntityGasGenerator extends TileEntityGenerator implements IGasH
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(fuelTank.getGas() == null || fuelTank.getGas().isGasEqual(stack))
|
||||
{
|
||||
return fuelTank.receive(stack, true);
|
||||
return fuelTank.receive(stack, doTransfer);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -262,7 +262,7 @@ public class TileEntityGasGenerator extends TileEntityGenerator implements IGasH
|
|||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -104,21 +104,21 @@ public class TileEntityReactorPort extends TileEntityReactorBlock implements IFl
|
|||
}
|
||||
|
||||
@Override
|
||||
public int receiveGas(ForgeDirection side, GasStack stack)
|
||||
public int receiveGas(ForgeDirection side, GasStack stack, boolean doTransfer)
|
||||
{
|
||||
if(getReactor() != null)
|
||||
{
|
||||
if(stack.getGas() == GasRegistry.getGas("deuterium"))
|
||||
{
|
||||
return getReactor().getDeuteriumTank().receive(stack, true);
|
||||
return getReactor().getDeuteriumTank().receive(stack, doTransfer);
|
||||
}
|
||||
else if(stack.getGas() == GasRegistry.getGas("tritium"))
|
||||
{
|
||||
return getReactor().getTritiumTank().receive(stack, true);
|
||||
return getReactor().getTritiumTank().receive(stack, doTransfer);
|
||||
}
|
||||
else if(stack.getGas() == GasRegistry.getGas("fusionFuelDT"))
|
||||
{
|
||||
return getReactor().getFuelTank().receive(stack, true);
|
||||
return getReactor().getFuelTank().receive(stack, doTransfer);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -126,13 +126,13 @@ public class TileEntityReactorPort extends TileEntityReactorBlock implements IFl
|
|||
}
|
||||
|
||||
@Override
|
||||
public GasStack drawGas(ForgeDirection side, int amount)
|
||||
public GasStack drawGas(ForgeDirection side, int amount, boolean doTransfer)
|
||||
{
|
||||
if(getReactor() != null)
|
||||
{
|
||||
if(getReactor().getSteamTank().getFluidAmount() > 0)
|
||||
{
|
||||
return new GasStack(GasRegistry.getGas("steam"), getReactor().getSteamTank().drain(amount, true).amount);
|
||||
return new GasStack(GasRegistry.getGas("steam"), getReactor().getSteamTank().drain(amount, doTransfer).amount);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue