From bf8cef9c8c9e462b4c844f8ce0d0383f21731042 Mon Sep 17 00:00:00 2001 From: DTK-MrRaccoon Date: Sat, 25 Apr 2026 18:26:36 +0200 Subject: [PATCH] ror tank reading for boilers --- .../machine/TileEntityHeatBoiler.java | 23 ++++++++++++++++++- .../TileEntityHeatBoilerIndustrial.java | 18 ++++++++++++++- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoiler.java b/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoiler.java index f3c1ef885..81e3604e3 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoiler.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoiler.java @@ -26,6 +26,7 @@ import com.hbm.tileentity.TileEntityLoadedBase; import com.hbm.util.fauxpointtwelve.DirPos; import api.hbm.fluidmk2.IFluidStandardTransceiverMK2; +import api.hbm.redstoneoverradio.IRORValueProvider; import api.hbm.tile.IHeatSource; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -37,7 +38,7 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.EnumSkyBlock; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityHeatBoiler extends TileEntityLoadedBase implements IBufPacketReceiver, IFluidStandardTransceiverMK2, IConfigurableMachine, IFluidCopiable { +public class TileEntityHeatBoiler extends TileEntityLoadedBase implements IBufPacketReceiver, IFluidStandardTransceiverMK2, IConfigurableMachine, IFluidCopiable, IRORValueProvider { public int heat; public FluidTank[] tanks; @@ -358,4 +359,24 @@ public class TileEntityHeatBoiler extends TileEntityLoadedBase implements IBufPa writer.name("D:diffusion").value(diffusion); writer.name("B:canExplode").value(canExplode); } + + @Override + public String[] getFunctionInfo() { + return new String[] { + PREFIX_VALUE + "input", + PREFIX_VALUE + "output" + }; + } + + @Override + public String provideRORValue(String name) { + if (hasExploded) { + if ((PREFIX_VALUE + "input").equals(name)) return "0"; + if ((PREFIX_VALUE + "output").equals(name)) return "0"; + return null; + } + if ((PREFIX_VALUE + "input").equals(name)) return "" + tanks[0].getFill(); + if ((PREFIX_VALUE + "output").equals(name)) return "" + tanks[1].getFill(); + return null; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoilerIndustrial.java b/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoilerIndustrial.java index 35f735f38..2cf6ef81f 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoilerIndustrial.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityHeatBoilerIndustrial.java @@ -21,6 +21,7 @@ import com.hbm.tileentity.TileEntityLoadedBase; import com.hbm.util.fauxpointtwelve.DirPos; import api.hbm.fluidmk2.IFluidStandardTransceiverMK2; +import api.hbm.redstoneoverradio.IRORValueProvider; import api.hbm.tile.IHeatSource; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -31,7 +32,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.EnumSkyBlock; -public class TileEntityHeatBoilerIndustrial extends TileEntityLoadedBase implements IBufPacketReceiver, IFluidStandardTransceiverMK2, IConfigurableMachine, IFluidCopiable { +public class TileEntityHeatBoilerIndustrial extends TileEntityLoadedBase implements IBufPacketReceiver, IFluidStandardTransceiverMK2, IConfigurableMachine, IFluidCopiable, IRORValueProvider { public int heat; public FluidTank[] tanks; @@ -320,4 +321,19 @@ public class TileEntityHeatBoilerIndustrial extends TileEntityLoadedBase impleme writer.name("I:maxHeat").value(maxHeat); writer.name("D:diffusion").value(diffusion); } + + @Override + public String[] getFunctionInfo() { + return new String[] { + PREFIX_VALUE + "input", + PREFIX_VALUE + "output" + }; + } + + @Override + public String provideRORValue(String name) { + if ((PREFIX_VALUE + "input").equals(name)) return "" + tanks[0].getFill(); + if ((PREFIX_VALUE + "output").equals(name)) return "" + tanks[1].getFill(); + return null; + } }