This commit is contained in:
Boblet 2024-07-05 15:25:04 +02:00
parent bcaeeab194
commit b31cb80fa3
8 changed files with 24 additions and 18 deletions

View File

@ -2,7 +2,7 @@
* Acidizer Input Partitioner
* Buffers inputs for the ore acidizer and releases the exact amount needed to complete an operation
* This allows easy automation of acidizers accepting multiple types which have higher input requirements
* By simply shoving items into the acidizer all at once, there is a high likelyhood of the acidizer to clog, as the remaining input is no longer sufficient
* By simply shoving items into the acidizer all at once, there is a high likelihood of the acidizer to clog, as the remaining input is no longer sufficient
* The partitioner only has 9 slots for ingredients, for more types it's necessary to sort the items and use multiple partitioners
* The partitioner has 9 additional slots for invalid items that cannot be processed via acidizer, those can be ejected via hopper IO
* An inline conveyor machine similar to the splitter, receives items from conveyors (but not from ejectors directly) and outputs them on its built-in conveyor belt
@ -32,4 +32,5 @@
* Added recipe caching to the arc furnace, fixing an issue where recipe detection and item IO are horribly inefficient
* Fixed arc furnace state not properly saving after performing a recipe
* Fixed crash regarding OC compat
* Fixed a rare crash with the anvil GUI
* Fixed a rare crash with the anvil GUI
* Fixed potential world corruption caused by the RBMK console

View File

@ -2,6 +2,7 @@ package api.hbm.energymk2;
import com.hbm.packet.AuxParticlePacketNT;
import com.hbm.packet.PacketDispatcher;
import com.hbm.util.Compat;
import api.hbm.energymk2.Nodespace.PowerNode;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
@ -24,7 +25,7 @@ public interface IEnergyProviderMK2 extends IEnergyHandlerMK2 {
public default void tryProvide(World world, int x, int y, int z, ForgeDirection dir) {
TileEntity te = world.getTileEntity(x, y, z);
TileEntity te = Compat.getTileStandard(world, x, y, z);
boolean red = false;
if(te instanceof IEnergyConductorMK2) {

View File

@ -2,6 +2,7 @@ package api.hbm.energymk2;
import com.hbm.packet.AuxParticlePacketNT;
import com.hbm.packet.PacketDispatcher;
import com.hbm.util.Compat;
import api.hbm.energymk2.Nodespace.PowerNode;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
@ -30,7 +31,7 @@ public interface IEnergyReceiverMK2 extends IEnergyHandlerMK2 {
public default void trySubscribe(World world, int x, int y, int z, ForgeDirection dir) {
TileEntity te = world.getTileEntity(x, y, z);
TileEntity te = Compat.getTileStandard(world, x, y, z);
boolean red = false;
if(te instanceof IEnergyConductorMK2) {

View File

@ -3,6 +3,7 @@ package api.hbm.fluid;
import com.hbm.inventory.fluid.FluidType;
import com.hbm.packet.AuxParticlePacketNT;
import com.hbm.packet.PacketDispatcher;
import com.hbm.util.Compat;
import api.hbm.tile.ILoadedTile;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
@ -45,7 +46,7 @@ public interface IFluidConnector extends ILoadedTile {
*/
public default void trySubscribe(FluidType type, World world, int x, int y, int z, ForgeDirection dir) {
TileEntity te = world.getTileEntity(x, y, z);
TileEntity te = Compat.getTileStandard(world, x, y, z);
boolean red = false;
if(te instanceof IFluidConductor) {

View File

@ -4,6 +4,7 @@ import com.hbm.inventory.fluid.FluidType;
import com.hbm.inventory.fluid.tank.FluidTank;
import com.hbm.packet.AuxParticlePacketNT;
import com.hbm.packet.PacketDispatcher;
import com.hbm.util.Compat;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
import net.minecraft.nbt.NBTTagCompound;
@ -71,7 +72,7 @@ public interface IFluidUser extends IFluidConnector {
public static IPipeNet getPipeNet(World world, int x, int y, int z, FluidType type) {
TileEntity te = world.getTileEntity(x, y, z);
TileEntity te = Compat.getTileStandard(world, x, y, z);
if(te instanceof IFluidConductor) {
IFluidConductor con = (IFluidConductor) te;

View File

@ -90,7 +90,7 @@ public class Mats {
public static final NTMMaterial MAT_PB209 = makeSmeltable(8209, PB209, 0x7B535D).setShapes(NUGGET, BILLET, INGOT, DUST).m();
public static final NTMMaterial MAT_SCHRABIDIUM = makeSmeltable(12626, SA326, 0x32FFFF, 0x005C5C, 0x32FFFF).setShapes(NUGGET, WIRE, BILLET, INGOT, DUST, DENSEWIRE, PLATE, CASTPLATE, BLOCK).m();
public static final NTMMaterial MAT_SOLINIUM = makeSmeltable(12627, SA327, 0xA2E6E0, 0x00433D, 0x72B6B0).setShapes(NUGGET, BILLET, INGOT, BLOCK).m();
public static final NTMMaterial MAT_SCHRABIDATE = makeSmeltable(12600, SBD, 0x77C0D7, 0x39005E, 0x6589B4).setShapes(INGOT, DUST, DENSEWIRE, BLOCK).m();
public static final NTMMaterial MAT_SCHRABIDATE = makeSmeltable(12600, SBD, 0x77C0D7, 0x39005E, 0x6589B4).setShapes(INGOT, DUST, DENSEWIRE, CASTPLATE, BLOCK).m();
public static final NTMMaterial MAT_SCHRARANIUM = makeSmeltable(12601, SRN, 0x2B3227, 0x2B3227, 0x24AFAC).setShapes(INGOT, BLOCK).m();
public static final NTMMaterial MAT_GHIORSIUM = makeSmeltable(12836, GH336, 0xF4EFE1, 0x2A3306, 0xC6C6A1).setShapes(NUGGET, BILLET, INGOT, BLOCK).m();

View File

@ -639,7 +639,7 @@ public class AssemblerRecipes extends SerializableRecipe {
}, 1200);
makeRecipe(new ComparableStack(ModItems.sat_gerald, 1), new AStack[] {
new OreDictStack(ANY_BISMOIDBRONZE.plateCast(), 128),
new OreDictStack(SBD.plateCast(), 128),
new OreDictStack(BSCCO.wireDense(), 128),
new ComparableStack(ModBlocks.det_nuke, 64),
new ComparableStack(ModItems.part_generic, 256, EnumPartType.HDE),

View File

@ -14,6 +14,7 @@ import com.hbm.inventory.gui.GUIRBMKConsole;
import com.hbm.tileentity.IGUIProvider;
import com.hbm.tileentity.TileEntityMachineBase;
import com.hbm.tileentity.machine.rbmk.TileEntityRBMKControlManual.RBMKColor;
import com.hbm.util.Compat;
import com.hbm.util.EnumUtil;
import com.hbm.util.I18nUtil;
@ -88,7 +89,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
for(int i = -7; i <= 7; i++) {
for(int j = -7; j <= 7; j++) {
TileEntity te = worldObj.getTileEntity(targetX + i, targetY, targetZ + j);
TileEntity te = Compat.getTileStandard(worldObj, targetX + i, targetY, targetZ + j);
int index = (i + 7) + (j + 7) * 15;
if(te instanceof TileEntityRBMKBase) {
@ -266,7 +267,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
int x = data.getInteger(key) % 15 - 7;
int z = data.getInteger(key) / 15 - 7;
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + z);
TileEntity te = Compat.getTileStandard(worldObj, targetX + x, targetY, targetZ + z);
if(te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
@ -307,7 +308,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
int x = i % 15 - 7;
int z = i / 15 - 7;
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + z);
TileEntity te = Compat.getTileStandard(worldObj, targetX + x, targetY, targetZ + z);
if(te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
@ -324,7 +325,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
int x = i % 15 - 7;
int z = i / 15 - 7;
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + z);
TileEntity te = Compat.getTileStandard(worldObj, targetX + x, targetY, targetZ + z);
if(te instanceof TileEntityRBMKBoiler) {
TileEntityRBMKBoiler rod = (TileEntityRBMKBoiler) te;
@ -534,7 +535,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
int i = (y + 7) * 15 + (x + 7);
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + y);
TileEntity te = Compat.getTileStandard(worldObj, targetX + x, targetY, targetZ + y);
if (te instanceof TileEntityRBMKBase) {
TileEntityRBMKBase column = (TileEntityRBMKBase) te;
@ -603,7 +604,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
boolean foundRods = false;
for(int i = -7; i <= 7; i++) {
for(int j = -7; j <= 7; j++) {
TileEntity te = worldObj.getTileEntity(targetX + i, targetY, targetZ + j);
TileEntity te = Compat.getTileStandard(worldObj, targetX + i, targetY, targetZ + j);
if (te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
@ -629,7 +630,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
int y = -args.checkInteger(1) + 7;
double new_level = args.checkDouble(2);
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + y);
TileEntity te = Compat.getTileStandard(worldObj, targetX + x, targetY, targetZ + y);
if (te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
@ -652,7 +653,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
if(color >= 0 && color <=4){
for(int i = -7; i <= 7; i++) {
for(int j = -7; j <= 7; j++) {
TileEntity te = worldObj.getTileEntity(targetX + i, targetY, targetZ + j);
TileEntity te = Compat.getTileStandard(worldObj, targetX + i, targetY, targetZ + j);
if (te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
@ -682,7 +683,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
int y = -args.checkInteger(1) + 7;
int new_color = args.checkInteger(2);
if(new_color >= 0 && new_color <=4){
TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + y);
TileEntity te = Compat.getTileStandard(worldObj, targetX + x, targetY, targetZ + y);
if (te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;
@ -701,7 +702,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
boolean hasRods = false;
for(int i = -7; i <= 7; i++) {
for(int j = -7; j <= 7; j++) {
TileEntity te = worldObj.getTileEntity(targetX + i, targetY, targetZ + j);
TileEntity te = Compat.getTileStandard(worldObj, targetX + i, targetY, targetZ + j);
if (te instanceof TileEntityRBMKControlManual) {
TileEntityRBMKControlManual rod = (TileEntityRBMKControlManual) te;