new fluid net test

This commit is contained in:
Bob 2022-04-06 20:33:57 +02:00
parent 62f819daca
commit ded8b00310
5 changed files with 31 additions and 4 deletions

View File

@ -80,5 +80,5 @@ public interface IFluidConnector {
}
}
public static final boolean particleDebug = false;
public static final boolean particleDebug = true;
}

View File

@ -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;
}
}

View File

@ -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};
}
}

View File

@ -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};
}
}

View File

@ -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() {