Merge branch 'HbmMods:master' into master

This commit is contained in:
Raaaaaaaaaay 2026-01-06 22:26:01 +02:00 committed by GitHub
commit ee643f4407
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 104 additions and 11 deletions

View File

@ -9,6 +9,10 @@
* `/ntmreapnetworks`
* Deletes all active nodespace instances
* Mainly useful for server owners, in case nodespace builds up too much garbage data that isn't cleared correctly
* Fluid valve with counter
* Reads total fluid movement within a network
* Value can be read or reset with OC or RoR
* Allows for very precise portioning and fluid control
## Changed
* Updated italian localization
@ -21,6 +25,7 @@
* OpenComputers integration for the PWR can now also read the heat capacity stats
* Removed the restriction that demands that cluster ores need to be mined by hand
* Laser beams from energy weapons are now a lot more narrow
* All steam turbines now have a passive drain on unused power in their buffers
## Fixed
* Fixed meteors using a nonexistant keepalive timer, causing potential audio flickering in certain cases
@ -32,3 +37,5 @@
* Fixed power not saving for mining lasers
* Fixed the annihilator producing blank 528 mode blueprints when 528 mode isn't even enabled
* Fixed black fire not using the skeletonizer on death
* Fixed arc furnace electrodes not being able to be plugged into the arc furnace unless the lid is fully open
* Fixed broken keybind localization

View File

@ -1,6 +1,6 @@
mod_version=1.0.27
# Empty build number makes a release type
mod_build_number=5546
mod_build_number=5567
credits=HbMinecraft,\
\ rodolphito (explosion algorithms),\

View File

@ -1867,12 +1867,12 @@ public class ModBlocks {
machine_battery_socket = new MachineBatterySocket().setBlockName("machine_battery_socket").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel");
machine_battery_redd = new MachineBatteryREDD().setBlockName("machine_battery_redd").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel");
machine_battery_potato = new MachineBattery(Material.iron, 10_000).setBlockName("machine_battery_potato").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
machine_battery = new MachineBattery(Material.iron, 1_000_000).setBlockName("machine_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
machine_lithium_battery = new MachineBattery(Material.iron, 50_000_000).setBlockName("machine_lithium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
machine_schrabidium_battery = new MachineBattery(Material.iron, 25_000_000_000L).setBlockName("machine_schrabidium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
machine_dineutronium_battery = new MachineBattery(Material.iron, 1_000_000_000_000L).setBlockName("machine_dineutronium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
machine_fensu = new MachineFENSU(Material.iron).setBlockName("machine_fensu").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_fensu");
machine_battery_potato = new MachineBattery(Material.iron, 10_000).setBlockName("machine_battery_potato").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null);
machine_battery = new MachineBattery(Material.iron, 1_000_000).setBlockName("machine_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null);
machine_lithium_battery = new MachineBattery(Material.iron, 50_000_000).setBlockName("machine_lithium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null);
machine_schrabidium_battery = new MachineBattery(Material.iron, 25_000_000_000L).setBlockName("machine_schrabidium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null);
machine_dineutronium_battery = new MachineBattery(Material.iron, 1_000_000_000_000L).setBlockName("machine_dineutronium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null);
machine_fensu = new MachineFENSU(Material.iron).setBlockName("machine_fensu").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":machine_fensu");
capacitor_bus = new MachineCapacitorBus(Material.iron).setBlockName("capacitor_bus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null);
capacitor_copper = new MachineCapacitor(Material.iron, 1_000_000L, "copper").setBlockName("capacitor_copper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper");

View File

@ -3,7 +3,7 @@ package com.hbm.lib;
public class RefStrings {
public static final String MODID = "hbm";
public static final String NAME = "Hbm's Nuclear Tech Mod";
public static final String VERSION = "1.0.27 BETA (5546)";
public static final String VERSION = "1.0.27 BETA (5567)";
//HBM's Beta Naming Convention:
//V T (X)
//V -> next release version

View File

@ -96,6 +96,8 @@ public class TileEntityChungus extends TileEntityLoadedBase implements IEnergyPr
public void updateEntity() {
if(!worldObj.isRemote) {
this.power *= 0.95;
this.info = new double[3];

View File

@ -394,7 +394,7 @@ public class TileEntityMachineArcFurnaceLarge extends TileEntityMachineBase impl
@Override
public boolean canInsertItem(int slot, ItemStack stack, int side) {
if(slot < 3) return lid >= 1 && stack.getItem() == ModItems.arc_electrode;
if(slot < 3) return stack.getItem() == ModItems.arc_electrode;
if(slot >= 25) {
ArcFurnaceRecipe recipe = ArcFurnaceRecipes.getOutput(stack, this.liquidMode);
if(recipe == null) return false;
@ -405,7 +405,7 @@ public class TileEntityMachineArcFurnaceLarge extends TileEntityMachineBase impl
@Override
public boolean isItemValidForSlot(int slot, ItemStack stack) {
if(slot < 3) return lid >= 1 && stack.getItem() == ModItems.arc_electrode;
if(slot < 3) return stack.getItem() == ModItems.arc_electrode;
if(slot > 4) {
ArcFurnaceRecipe recipe = ArcFurnaceRecipes.getOutput(stack, this.liquidMode);
if(recipe == null) return false;

View File

@ -120,6 +120,8 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme
tanks[0].setType(0, 1, slots);
tanks[0].loadTank(2, 3, slots);
power = Library.chargeItemsFromTE(slots, 4, power, maxPower);
this.power *= 0.95;
FluidType in = tanks[0].getTankType();
boolean valid = false;

View File

@ -282,6 +282,8 @@ public class TileEntityMachineTurbine extends TileEntityLoadedBase implements IS
tanks[0].setType(0, 1, slots);
tanks[0].loadTank(2, 3, slots);
power = Library.chargeItemsFromTE(slots, 4, power, maxPower);
this.power *= 0.95;
FluidType in = tanks[0].getTankType();
boolean valid = false;

View File

@ -3,19 +3,25 @@ package com.hbm.tileentity.machine.storage;
import com.hbm.inventory.container.ContainerBatterySocket;
import com.hbm.inventory.gui.GUIBatterySocket;
import com.hbm.items.ModItems;
import com.hbm.util.CompatEnergyControl;
import com.hbm.util.EnumUtil;
import com.hbm.util.fauxpointtwelve.BlockPos;
import com.hbm.util.fauxpointtwelve.DirPos;
import api.hbm.energymk2.IBatteryItem;
import api.hbm.redstoneoverradio.IRORInteractive;
import api.hbm.redstoneoverradio.IRORValueProvider;
import api.hbm.tile.IInfoProviderEC;
import io.netty.buffer.ByteBuf;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
public class TileEntityBatterySocket extends TileEntityBatteryBase {
public class TileEntityBatterySocket extends TileEntityBatteryBase implements IRORValueProvider, IRORInteractive, IInfoProviderEC {
public long[] log = new long[20];
public long delta = 0;
@ -159,4 +165,76 @@ public class TileEntityBatterySocket extends TileEntityBatteryBase {
return bb;
}
@Override
public String[] getFunctionInfo() {
return new String[] {
PREFIX_VALUE + "fill",
PREFIX_VALUE + "fillpercent",
PREFIX_VALUE + "delta",
PREFIX_FUNCTION + "setmode" + NAME_SEPARATOR + "mode",
PREFIX_FUNCTION + "setmode" + NAME_SEPARATOR + "mode" + PARAM_SEPARATOR + "fallback",
PREFIX_FUNCTION + "setredmode" + NAME_SEPARATOR + "mode",
PREFIX_FUNCTION + "setredmode" + NAME_SEPARATOR + "mode" + PARAM_SEPARATOR + "fallback",
PREFIX_FUNCTION + "setpriority" + NAME_SEPARATOR + "priority",
};
}
@Override
public String provideRORValue(String name) {
if((PREFIX_VALUE + "fill").equals(name)) return "" + this.getPower();
if((PREFIX_VALUE + "fillpercent").equals(name)) return "" + this.getPower() * 100 / (Math.min(this.getMaxPower(), 1));
if((PREFIX_VALUE + "delta").equals(name)) return "" + delta;
return null;
}
@Override
public String runRORFunction(String name, String[] params) {
if((PREFIX_FUNCTION + "setmode").equals(name) && params.length > 0) {
int mode = IRORInteractive.parseInt(params[0], 0, 3);
if(mode != this.redLow) {
this.redLow = (short) mode;
this.markChanged();
return null;
} else if(params.length > 1) {
int altmode = IRORInteractive.parseInt(params[1], 0, 3);
this.redLow = (short) altmode;
this.markChanged();
return null;
}
return null;
}
if((PREFIX_FUNCTION + "setredmode").equals(name) && params.length > 0) {
int mode = IRORInteractive.parseInt(params[0], 0, 3);
if(mode != this.redHigh) {
this.redHigh = (short) mode;
this.markChanged();
return null;
} else if(params.length > 1) {
int altmode = IRORInteractive.parseInt(params[1], 0, 3);
this.redHigh = (short) altmode;
this.markChanged();
return null;
}
return null;
}
if((PREFIX_FUNCTION + "setpriority").equals(name) && params.length > 0) {
int priority = IRORInteractive.parseInt(params[0], 0, 2) + 1;
ConnectionPriority p = EnumUtil.grabEnumSafely(ConnectionPriority.class, priority);
this.priority = p;
this.markChanged();
return null;
}
return null;
}
@Override
public void provideExtraInfo(NBTTagCompound data) {
data.setLong(CompatEnergyControl.L_DIFF_HE, (log[0] - log[19]) / 20L);
}
}

View File

@ -757,6 +757,7 @@ hbm.key.dash=Schub
hbm.key.gunPrimary=Primärfeuer
hbm.key.gunSecondary=Sekundärfeuer
hbm.key.gunTertitary=Zielvisier
hbm.key.qmaw=Schnellhandbuch öffnen
hbm.key.toggleBack=Jetpack umschalten
hbm.key.toggleHUD=HUD umschalten
hbm.key.toggleMagnet=Magnet umschalten

View File

@ -1494,6 +1494,7 @@ hbm.key.dash=Dash
hbm.key.gunPrimary=Primary Fire
hbm.key.gunSecondary=Secondary Fire
hbm.key.gunTertitary=Gun Sights
hbm.key.qmaw=Open Quick Manual
hbm.key.toggleBack=Toggle Jetpack
hbm.key.toggleHUD=Toggle HUD
hbm.key.toggleMagnet=Toggle Magnet