Added max pressure and flow rate to pipe network reconstruct
This commit is contained in:
parent
ebeaab6400
commit
a2a8f8c5e1
1 changed files with 108 additions and 100 deletions
|
@ -11,18 +11,17 @@ import net.minecraftforge.fluids.IFluidHandler;
|
||||||
import resonantinduction.api.fluid.IFluidConnector;
|
import resonantinduction.api.fluid.IFluidConnector;
|
||||||
import resonantinduction.api.fluid.IFluidNetwork;
|
import resonantinduction.api.fluid.IFluidNetwork;
|
||||||
import resonantinduction.api.fluid.IFluidPipe;
|
import resonantinduction.api.fluid.IFluidPipe;
|
||||||
import universalelectricity.api.energy.IConductor;
|
|
||||||
import universalelectricity.api.vector.Vector3;
|
import universalelectricity.api.vector.Vector3;
|
||||||
import calclavia.lib.utility.FluidUtility;
|
import calclavia.lib.utility.FluidUtility;
|
||||||
|
|
||||||
/**
|
/** The network for pipe fluid transfer. getNodes() is NOT used.
|
||||||
* The network for pipe fluid transfer. getNodes() is NOT used.
|
|
||||||
*
|
*
|
||||||
* @author DarkGuardsman
|
* @author DarkGuardsman */
|
||||||
*/
|
|
||||||
public class PipeNetwork extends FluidNetwork
|
public class PipeNetwork extends FluidNetwork
|
||||||
{
|
{
|
||||||
public HashMap<IFluidHandler, EnumSet<ForgeDirection>> connectionMap = new HashMap<IFluidHandler, EnumSet<ForgeDirection>>();
|
public HashMap<IFluidHandler, EnumSet<ForgeDirection>> connectionMap = new HashMap<IFluidHandler, EnumSet<ForgeDirection>>();
|
||||||
|
public int maxFlowRate = 0;
|
||||||
|
public int maxPressure = 0;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update()
|
public void update()
|
||||||
|
@ -89,6 +88,7 @@ public class PipeNetwork extends FluidNetwork
|
||||||
public void reconstruct()
|
public void reconstruct()
|
||||||
{
|
{
|
||||||
this.connectionMap.clear();
|
this.connectionMap.clear();
|
||||||
|
this.maxFlowRate = Integer.MAX_VALUE;
|
||||||
super.reconstruct();
|
super.reconstruct();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,6 +96,14 @@ public class PipeNetwork extends FluidNetwork
|
||||||
public void reconstructConnector(IFluidConnector part)
|
public void reconstructConnector(IFluidConnector part)
|
||||||
{
|
{
|
||||||
super.reconstructConnector(part);
|
super.reconstructConnector(part);
|
||||||
|
if (part instanceof IFluidPipe)
|
||||||
|
{
|
||||||
|
if (((IFluidPipe) part).getMaxFlowRate() < this.maxFlowRate)
|
||||||
|
this.maxFlowRate = ((IFluidPipe) part).getMaxFlowRate();
|
||||||
|
|
||||||
|
if (((IFluidPipe) part).getMaxPressure() < this.maxPressure)
|
||||||
|
this.maxPressure = ((IFluidPipe) part).getMaxPressure();
|
||||||
|
}
|
||||||
for (int i = 0; i < 6; i++)
|
for (int i = 0; i < 6; i++)
|
||||||
{
|
{
|
||||||
if (part.getConnections()[i] instanceof IFluidHandler && !(part.getConnections()[i] instanceof IFluidPipe))
|
if (part.getConnections()[i] instanceof IFluidHandler && !(part.getConnections()[i] instanceof IFluidPipe))
|
||||||
|
|
Loading…
Reference in a new issue