From ded8b0031038b3a329ac75ac5cf271650d45e8be Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 6 Apr 2022 20:33:57 +0200 Subject: [PATCH] new fluid net test --- src/main/java/api/hbm/fluid/IFluidConnector.java | 2 +- src/main/java/api/hbm/fluid/IFluidStandardSender.java | 10 ++++++++++ .../hbm/tileentity/machine/TileEntityMachineCoal.java | 10 +++++++++- .../tileentity/machine/storage/TileEntityBarrel.java | 11 ++++++++++- .../hbm/tileentity/network/TileEntityPipeBaseNT.java | 2 +- 5 files changed, 31 insertions(+), 4 deletions(-) diff --git a/src/main/java/api/hbm/fluid/IFluidConnector.java b/src/main/java/api/hbm/fluid/IFluidConnector.java index 9ec663305..f8f1034d8 100644 --- a/src/main/java/api/hbm/fluid/IFluidConnector.java +++ b/src/main/java/api/hbm/fluid/IFluidConnector.java @@ -80,5 +80,5 @@ public interface IFluidConnector { } } - public static final boolean particleDebug = false; + public static final boolean particleDebug = true; } diff --git a/src/main/java/api/hbm/fluid/IFluidStandardSender.java b/src/main/java/api/hbm/fluid/IFluidStandardSender.java index 83a0a9d98..6f6ef8238 100644 --- a/src/main/java/api/hbm/fluid/IFluidStandardSender.java +++ b/src/main/java/api/hbm/fluid/IFluidStandardSender.java @@ -37,4 +37,14 @@ public interface IFluidStandardSender extends IFluidUser { } } } + + @Override + public default long transferFluid(FluidType type, long fluid) { + return fluid; + } + + @Override + public default long getDemand(FluidType type) { + return 0; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java index 878d3ad21..ac6e0f679 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java @@ -25,9 +25,10 @@ import com.hbm.tileentity.TileEntityLoadedBase; import api.hbm.energy.IBatteryItem; import api.hbm.energy.IEnergyGenerator; +import api.hbm.fluid.IFluidStandardReceiver; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; -public class TileEntityMachineCoal extends TileEntityLoadedBase implements ISidedInventory, IEnergyGenerator, IFluidContainer, IFluidAcceptor { +public class TileEntityMachineCoal extends TileEntityLoadedBase implements ISidedInventory, IEnergyGenerator, IFluidContainer, IFluidAcceptor, IFluidStandardReceiver { private ItemStack slots[]; @@ -224,6 +225,8 @@ public class TileEntityMachineCoal extends TileEntityLoadedBase implements ISide for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) this.sendPower(worldObj, xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ, dir); + + this.updateStandardPipes(Fluids.WATER, worldObj, xCoord, yCoord, zCoord); //Water tank.loadTank(0, 3, slots); @@ -335,4 +338,9 @@ public class TileEntityMachineCoal extends TileEntityLoadedBase implements ISide public void setTypeForSync(FluidType type, int index) { tank.setTankType(type); } + + @Override + public FluidTank[] getReceivingTanks() { + return new FluidTank[] {tank}; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/storage/TileEntityBarrel.java b/src/main/java/com/hbm/tileentity/machine/storage/TileEntityBarrel.java index 22d291929..3759d41db 100644 --- a/src/main/java/com/hbm/tileentity/machine/storage/TileEntityBarrel.java +++ b/src/main/java/com/hbm/tileentity/machine/storage/TileEntityBarrel.java @@ -14,12 +14,14 @@ import com.hbm.lib.Library; import com.hbm.main.ModEventHandler; import com.hbm.tileentity.TileEntityMachineBase; +import api.hbm.fluid.IFluidStandardSender; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.EnumSkyBlock; +import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcceptor, IFluidSource { +public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcceptor, IFluidSource, IFluidStandardSender { public FluidTank tank; public short mode = 0; @@ -52,6 +54,8 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc tank.unloadTank(4, 5, slots); tank.updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId); + this.sendFluid(tank.getTankType(), worldObj, xCoord, yCoord - 1, zCoord, ForgeDirection.DOWN); + age++; if(age >= 20) age = 0; @@ -200,4 +204,9 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc nbt.setShort("mode", mode); tank.writeToNBT(nbt, "tank"); } + + @Override + public FluidTank[] getSendingTanks() { + return new FluidTank[] {tank}; + } } diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java b/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java index 826a62809..0f43b2c2e 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java @@ -12,7 +12,7 @@ import net.minecraftforge.common.util.ForgeDirection; public class TileEntityPipeBaseNT extends TileEntity implements IFluidConductor { private IPipeNet network; - protected FluidType type = Fluids.NONE; + protected FluidType type = Fluids.WATER; @Override public void updateEntity() {