From 6bc4c2a836c28a42bb93777999e51ac726e3be4f Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 19 Apr 2026 22:00:30 +0200 Subject: [PATCH] that's not how it works in bean town --- changelog | 32 ++----------------- .../com/hbm/blocks/generic/BlockKeyhole.java | 2 +- .../com/hbm/crafting/ConsumableRecipes.java | 2 ++ src/main/java/com/hbm/main/NEIRegistry.java | 2 +- .../machine/rbmk/TileEntityRBMKBoiler.java | 22 +++++++++++-- .../machine/rbmk/TileEntityRBMKHeater.java | 18 ++++++++++- .../machine/rbmk/TileEntityRBMKRod.java | 8 ++++- 7 files changed, 51 insertions(+), 35 deletions(-) diff --git a/changelog b/changelog index b77da83cc..81693cda2 100644 --- a/changelog +++ b/changelog @@ -1,30 +1,4 @@ -## Added -* Redstone-over-radio lever - * Big breaker switches - * Up to two per module, side by side - * Can send different RoR values based on the lever's position -* Redstone-over-radio indicator lights - * Colored indicator light panels with labels on them - * Up to six lights per module - * Will light up when an RoR signal falls within the configured threshold - ## Changed -* All RoR panels now have basic item descriptions informing about the screwdriver requirement for configuration -* EMP grenades now deal 5x damage against anything with powered armor - * Decreased base damage to compensate -* EMP grenades now destroy machines in a small radius like an EMP missile would -* Grenades are no longer affected by nuclear blasts or other grenade explosions -* Players no longer receive the starting guide book on first spawn since it's now very outdated -* All RoR panels now have QMAW integration -* Legacy plasma heater and plasma heater hatches which are still found in crashed space ships can now be dismantled into steel pipes, copper pipes and analog circuits -* Removed legacy plasma block -* RoR panels now have OpenComputers integration, allowing otherwise fixed parameters like gauge thresholds, channels, and button commands to be adjusted on the fly -* Solinium blasts now use the new higher poly sphere model and frame interpolation, making the expansion smoother -* Using a defuser on paintable cables/pipes/tubes that already have a paint applied will toggle the overlay, makng the cable/pipe/tube blend in perfectly -* Mufflers installed on force fields now disable the loud spark noise caused by impacts - -## Fixed -* Fixed the grenade crafting handler not checking if a shell/filling combination is even valid, allowing weird combos -* Fixed dispenser fired laser grenades crashing the game -* Fixed schrabidium grenade being obscenely powerful for no reason -* Fixed annihilator recipe config throwing an error about the recipe list being empty, even though the recipe list should indeed be empty on purpose \ No newline at end of file +* RoR readers can now read neutron flux from fuel channels and the fill state of boilers and heat exchangers +* Canned recursion can now be crafted from canned recursion +* Soldering recipes are now prioritized over anvil recipes in the NEI listing \ No newline at end of file diff --git a/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java b/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java index b042ba695..ad470b577 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java +++ b/src/main/java/com/hbm/blocks/generic/BlockKeyhole.java @@ -203,7 +203,7 @@ public class BlockKeyhole extends BlockStone { int rand = world.rand.nextInt(20); if(rand == 0) { - world.setBlock(x, y + 1, z, ModBlocks.deco_loot); + world.setBlock(x, y + 1, z, ModBlocks.deco_loot); TileEntityLoot loot = (TileEntityLoot) world.getTileEntity(x, y + 1, z); if(world.rand.nextInt(5) == 0) { diff --git a/src/main/java/com/hbm/crafting/ConsumableRecipes.java b/src/main/java/com/hbm/crafting/ConsumableRecipes.java index d11d70fb5..988bb7165 100644 --- a/src/main/java/com/hbm/crafting/ConsumableRecipes.java +++ b/src/main/java/com/hbm/crafting/ConsumableRecipes.java @@ -10,6 +10,7 @@ import com.hbm.items.weapon.grenade.ItemGrenadeFilling.EnumGrenadeFilling; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; import com.hbm.items.ItemEnums; import com.hbm.items.ModItems; +import com.hbm.items.food.ItemConserve.EnumFoodType; import com.hbm.main.CraftingManager; import static com.hbm.inventory.OreDictManager.*; @@ -63,6 +64,7 @@ public class ConsumableRecipes { CraftingManager.addShapelessAuto(new ItemStack(ModItems.ingot_smore), new Object[] { Items.wheat, new ItemStack(ModItems.marshmallow, 1, 1), new ItemStack(Items.dye, 1, 3) }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.marshmallow), new Object[] { Items.stick, Items.sugar, Items.wheat_seeds }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.quesadilla, 3), new Object[] { ModItems.cheese, ModItems.cheese, Items.bread }); + CraftingManager.addShapelessAuto(new ItemStack(ModItems.canned_conserve, 1, EnumFoodType.RECURSION.ordinal()), new Object[] { new ItemStack(ModItems.canned_conserve, 1, EnumFoodType.RECURSION.ordinal()) }); //Peas CraftingManager.addRecipeAuto(new ItemStack(ModItems.peas), new Object[] { " S ", "SNS", " S ", 'S', Items.wheat_seeds, 'N', GOLD.nugget() }); diff --git a/src/main/java/com/hbm/main/NEIRegistry.java b/src/main/java/com/hbm/main/NEIRegistry.java index c340a14bb..2e8bbcb23 100644 --- a/src/main/java/com/hbm/main/NEIRegistry.java +++ b/src/main/java/com/hbm/main/NEIRegistry.java @@ -18,6 +18,7 @@ public class NEIRegistry { handlers.add(new ToolingHandler()); handlers.add(new ConstructionHandler()); handlers.add(new AnnihilatorHandler()); + handlers.add(new SolderingStationHandler()); handlers.add(new AnvilRecipeHandler()); handlers.add(new SmithingRecipeHandler()); handlers.add(new PressRecipeHandler()); @@ -72,7 +73,6 @@ public class NEIRegistry { handlers.add(new ElectrolyserMetalHandler()); handlers.add(new AshpitHandler()); handlers.add(new ArcWelderHandler()); - handlers.add(new SolderingStationHandler()); handlers.add(new ExposureChamberHandler()); handlers.add(new ArcFurnaceSolidHandler()); handlers.add(new ArcFurnaceFluidHandler()); diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java index a32131591..d76f5b550 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java @@ -1,7 +1,8 @@ package com.hbm.tileentity.machine.rbmk; -import api.hbm.fluid.IFluidStandardTransceiver; import api.hbm.fluidmk2.FluidNode; +import api.hbm.fluidmk2.IFluidStandardTransceiverMK2; +import api.hbm.redstoneoverradio.IRORValueProvider; import api.hbm.tile.IInfoProviderEC; import com.hbm.blocks.ModBlocks; @@ -37,7 +38,7 @@ import net.minecraft.util.Vec3; import net.minecraft.world.World; @Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "OpenComputers")}) -public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements IControlReceiver, IFluidStandardTransceiver, SimpleComponent, IInfoProviderEC, CompatHandler.OCComponent { +public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements IControlReceiver, IFluidStandardTransceiverMK2, SimpleComponent, IInfoProviderEC, IRORValueProvider, CompatHandler.OCComponent { public FluidTank feed; public FluidTank steam; @@ -347,4 +348,21 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I data.setDouble(CompatEnergyControl.D_CONSUMPTION_MB, consumption); data.setDouble(CompatEnergyControl.D_OUTPUT_MB, output); } + + @Override + public String[] getFunctionInfo() { + return new String[] { + PREFIX_VALUE + "feed", + PREFIX_VALUE + "steam", + PREFIX_VALUE + "consumption" + }; + } + + @Override + public String provideRORValue(String name) { + if((PREFIX_VALUE + "feed").equals(name)) return "" + this.feed.getFill(); + if((PREFIX_VALUE + "steam").equals(name)) return "" + this.steam.getFill(); + if((PREFIX_VALUE + "consumption").equals(name)) return "" + this.consumption; + return null; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKHeater.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKHeater.java index 08397ddb2..402237bbc 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKHeater.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKHeater.java @@ -1,6 +1,7 @@ package com.hbm.tileentity.machine.rbmk; import api.hbm.fluidmk2.IFluidStandardTransceiverMK2; +import api.hbm.redstoneoverradio.IRORValueProvider; import com.hbm.blocks.ModBlocks; import com.hbm.entity.projectile.EntityRBMKDebris.DebrisType; @@ -29,7 +30,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; @Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "opencomputers")}) -public class TileEntityRBMKHeater extends TileEntityRBMKSlottedBase implements IFluidStandardTransceiverMK2, SimpleComponent, CompatHandler.OCComponent { +public class TileEntityRBMKHeater extends TileEntityRBMKSlottedBase implements IFluidStandardTransceiverMK2, IRORValueProvider, SimpleComponent, CompatHandler.OCComponent { public FluidTank feed; public FluidTank steam; @@ -262,4 +263,19 @@ public class TileEntityRBMKHeater extends TileEntityRBMKSlottedBase implements I public Object provideGUI(int ID, EntityPlayer player, World world, int x, int y, int z) { return new GUIRBMKHeater(player.inventory, this); } + + @Override + public String[] getFunctionInfo() { + return new String[] { + PREFIX_VALUE + "in", + PREFIX_VALUE + "out" + }; + } + + @Override + public String provideRORValue(String name) { + if((PREFIX_VALUE + "in").equals(name)) return "" + this.feed.getFill(); + if((PREFIX_VALUE + "out").equals(name)) return "" + this.steam.getFill(); + return null; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java index 37bae47ea..a44b2c5d8 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java @@ -552,7 +552,10 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM PREFIX_VALUE + "columnheat", PREFIX_VALUE + "rodheat", PREFIX_VALUE + "depletion", - PREFIX_VALUE + "xenon" + PREFIX_VALUE + "xenon", + PREFIX_VALUE + "fastflux", + PREFIX_VALUE + "slowflux", + PREFIX_VALUE + "flux" }; } @@ -564,6 +567,9 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM if((PREFIX_VALUE + "depletion").equals(name)) return "" + (int) (100 - ItemRBMKRod.getEnrichment(slots[0]) * 100); if((PREFIX_VALUE + "xenon").equals(name)) return "" + (int) (ItemRBMKRod.getPoison(slots[0])); } + if((PREFIX_VALUE + "fastflux").equals(name)) return "" + (int) Math.ceil(fluxFromType(NType.FAST)); + if((PREFIX_VALUE + "slowflux").equals(name)) return "" + (int) Math.ceil(fluxFromType(NType.SLOW)); + if((PREFIX_VALUE + "flux").equals(name)) return "" + (int) Math.ceil(fluxFromType(NType.ANY)); return null; } }