This commit is contained in:
Boblet 2026-05-08 14:48:34 +02:00
parent d1af1e567c
commit a24d6e4bce
19 changed files with 146 additions and 39 deletions

View File

@ -1,12 +1,22 @@
## Added ## Added
* Redstone-over-Radio Terminal * Redstone-over-Radio Terminal
* Allows commands to be sent manually, command line style * Allows commands to be sent manually, command line style
* Supports single commands and repeated ones (polling)
## Changed ## Changed
* RoR graphs can now have their min and max bounds set to a fixed number * RoR graphs can now have their min and max bounds set to a fixed number
* This should make it easier to accurately tell the difference/scale of values when they exist in an expected range (for example, RBMK temperatures) * This should make it easier to accurately tell the difference/scale of values when they exist in an expected range (for example, RBMK temperatures)
* RoR controllers now use polling by default, since state change is unable to actually perform a function unless the state changes, preventing repeated commands * RoR controllers now use polling by default, since state change is unable to actually perform a function unless the state changes, preventing repeated commands
* HE/RF converters now have a tooltip showing their buffered energy
* Updated the models of the cage lamp, fluorescent light and halogen lamp
* 528 mode now has a new config for enabling gravity on machines
* Machines not on solid ground will tilt, causing them to break
* Still a work in progress, not all machines make use of it yet
* The ZIRNOX for example will continue to operate when tilted, however the pipes will disconnect, resulting in a fatal loss of cooling
* Slightly adjusted the automatic buzzsaw's texture
## Fixed ## Fixed
* Fixed RoR graph showing the wrong name in the GUI * Fixed RoR graph showing the wrong name in the GUI
* Fixed polling option in RoR controllers reading dead signals * Fixed polling option in RoR controllers reading dead signals
* Fixed state change in RoR controllers not allowing repeat commands
* Fixed blast furnace NEI handler not cycling through all valid material shapes

View File

@ -56,11 +56,13 @@ public class GeneralConfig {
public static boolean enable528NetherBurn = true; public static boolean enable528NetherBurn = true;
public static boolean enable528PressurizedRecipes = true; public static boolean enable528PressurizedRecipes = true;
public static boolean enable528ExplosiveEnergistics = true; public static boolean enable528ExplosiveEnergistics = true;
public static boolean enable528MachineGravity = true;
public static int coltanRate = 2; public static int coltanRate = 2;
public static boolean true528() { public static boolean true528() {
return enable528 && enable528ReasimBoilers && !enable528ColtanSpawn && enable528BosniaSimulator && return enable528 && enable528ReasimBoilers && !enable528ColtanSpawn && enable528BosniaSimulator &&
enable528NetherBurn && enable528PressurizedRecipes && enable528ExplosiveEnergistics && coltanRate <= 2; enable528NetherBurn && enable528PressurizedRecipes && enable528ExplosiveEnergistics &&
enable528MachineGravity && coltanRate <= 2;
} }
public static boolean enableLBSM = false; public static boolean enableLBSM = false;
@ -143,6 +145,7 @@ public class GeneralConfig {
enable528NetherBurn = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528NetherBurn", "Whether players burn in the nether", true); enable528NetherBurn = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528NetherBurn", "Whether players burn in the nether", true);
enable528PressurizedRecipes = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528PressurizedRecipes", "Sets some recipes to require pressurized input fluid", true); enable528PressurizedRecipes = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528PressurizedRecipes", "Sets some recipes to require pressurized input fluid", true);
enable528ExplosiveEnergistics = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528ExplosiveEnergistics", "Renders AE2 unusable.", true); enable528ExplosiveEnergistics = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528ExplosiveEnergistics", "Renders AE2 unusable.", true);
enable528MachineGravity = CommonConfig.createConfigBool(config, CATEGORY_528, "X528_enable528MachineGravity", "Requires most large machines to have a proper foundation, or else they tilt and break.", true);
coltanRate = CommonConfig.createConfigInt(config, CATEGORY_528, "X528_oreColtanFrequency", "Determines how many coltan ore veins are to be expected in a chunk. These values do not affect the frequency in deposits, and only apply if random coltan spanwing is enabled.", 2); coltanRate = CommonConfig.createConfigInt(config, CATEGORY_528, "X528_oreColtanFrequency", "Determines how many coltan ore veins are to be expected in a chunk. These values do not affect the frequency in deposits, and only apply if random coltan spanwing is enabled.", 2);
final String CATEGORY_LBSM = CommonConfig.CATEGORY_LBSM; final String CATEGORY_LBSM = CommonConfig.CATEGORY_LBSM;
@ -175,6 +178,7 @@ public class GeneralConfig {
enable528NetherBurn = false; enable528NetherBurn = false;
enable528PressurizedRecipes = false; enable528PressurizedRecipes = false;
enable528ExplosiveEnergistics = false; enable528ExplosiveEnergistics = false;
enable528MachineGravity = false;
} }
} }
} }

View File

@ -48,12 +48,12 @@ public class AlloyFurnaceRecipeHandler extends TemplateRecipeHandler implements
@Override @Override
public List<PositionedStack> getIngredients() { public List<PositionedStack> getIngredients() {
return getCycledIngredients(cycleticks / 48, Arrays.asList(new PositionedStack[] { input1, input2 })); return getCycledIngredients(cycleticks / 20, Arrays.asList(new PositionedStack[] { input1, input2 }));
} }
@Override @Override
public PositionedStack getOtherStack() { public PositionedStack getOtherStack() {
return fuels.get((cycleticks / 48) % fuels.size()).stack; return fuels.get((cycleticks / 20) % fuels.size()).stack;
} }
@Override @Override

View File

@ -150,7 +150,7 @@ public class BlastFurnaceRecipes extends SerializableRecipe {
else { else {
in1.remove(nothing); in1.remove(nothing);
in1.addAll(stack.extractForNEI()); in1.addAll(stack.extractForNEI());
break; continue;
} }
} }
if(in1.contains(nothing)) { if(in1.contains(nothing)) {
@ -162,7 +162,7 @@ public class BlastFurnaceRecipes extends SerializableRecipe {
} else { } else {
in2.remove(nothing); in2.remove(nothing);
in2.addAll(stack.extractForNEI()); in2.addAll(stack.extractForNEI());
break; continue;
} }
} }
if(in2.contains(nothing)) { if(in2.contains(nothing)) {

View File

@ -28,6 +28,12 @@ public class RenderFusionTorus extends TileEntitySpecialRenderer implements IIte
TileEntityFusionTorus torus = (TileEntityFusionTorus) tile; TileEntityFusionTorus torus = (TileEntityFusionTorus) tile;
if(torus.tilted) {
GL11.glTranslated(0, -1, 0);
GL11.glRotated(10, 0, 0, 1);
GL11.glRotated(5, 0, 1, 0);
}
GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.fusion_torus_tex); bindTexture(ResourceManager.fusion_torus_tex);
ResourceManager.fusion_torus.renderPart("Torus"); ResourceManager.fusion_torus.renderPart("Torus");

View File

@ -3,6 +3,7 @@ package com.hbm.render.tileentity;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
import com.hbm.main.ResourceManager; import com.hbm.main.ResourceManager;
import com.hbm.tileentity.machine.oil.TileEntityMachineGasFlare;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
@ -17,6 +18,14 @@ public class RenderGasFlare extends TileEntitySpecialRenderer {
GL11.glEnable(GL11.GL_LIGHTING); GL11.glEnable(GL11.GL_LIGHTING);
GL11.glRotatef(180, 0F, 1F, 0F); GL11.glRotatef(180, 0F, 1F, 0F);
TileEntityMachineGasFlare flare = (TileEntityMachineGasFlare) tileEntity;
if(flare.tilted) {
GL11.glTranslated(0, -0.25, 0);
GL11.glRotated(10, 0, 0, 1);
GL11.glRotated(5, 0, 1, 0);
}
GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.oilflare_tex); bindTexture(ResourceManager.oilflare_tex);

View File

@ -23,6 +23,12 @@ public class RenderRefinery extends TileEntitySpecialRenderer {
TileEntityMachineRefinery refinery = (TileEntityMachineRefinery) tileEntity; TileEntityMachineRefinery refinery = (TileEntityMachineRefinery) tileEntity;
if(refinery.tilted) {
GL11.glTranslated(0, -0.25, 0);
GL11.glRotated(10, 0, 0, 1);
GL11.glRotated(5, 0, 1, 0);
}
GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glShadeModel(GL11.GL_SMOOTH);
if(refinery.hasExploded) { if(refinery.hasExploded) {

View File

@ -3,6 +3,7 @@ package com.hbm.render.tileentity;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
import com.hbm.main.ResourceManager; import com.hbm.main.ResourceManager;
import com.hbm.tileentity.machine.TileEntityReactorZirnox;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
@ -15,15 +16,18 @@ public class RenderZirnox extends TileEntitySpecialRenderer {
GL11.glTranslated(x + 0.5D, y, z + 0.5D); GL11.glTranslated(x + 0.5D, y, z + 0.5D);
GL11.glEnable(GL11.GL_LIGHTING); GL11.glEnable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_CULL_FACE);
if(((TileEntityReactorZirnox) tileEntity).tilted) {
GL11.glTranslated(0, -0.5, 0);
GL11.glRotated(10, 0, 0, 1);
GL11.glRotated(5, 0, 1, 0);
}
switch(tileEntity.getBlockMetadata() - 10) { switch(tileEntity.getBlockMetadata() - 10) {
case 2: case 2: GL11.glRotatef(90, 0F, 1F, 0F); break;
GL11.glRotatef(90, 0F, 1F, 0F); break; case 3: GL11.glRotatef(270, 0F, 1F, 0F); break;
case 3: case 4: GL11.glRotatef(180, 0F, 1F, 0F); break;
GL11.glRotatef(270, 0F, 1F, 0F); break; case 5: GL11.glRotatef(0, 0F, 1F, 0F); break;
case 4:
GL11.glRotatef(180, 0F, 1F, 0F); break;
case 5:
GL11.glRotatef(0, 0F, 1F, 0F); break;
} }
GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glShadeModel(GL11.GL_SMOOTH);

View File

@ -1,16 +1,20 @@
package com.hbm.tileentity; package com.hbm.tileentity;
import com.hbm.config.GeneralConfig;
import com.hbm.handler.threading.PacketThreading; import com.hbm.handler.threading.PacketThreading;
import com.hbm.packet.toclient.BufPacket; import com.hbm.packet.toclient.BufPacket;
import com.hbm.sound.AudioWrapper; import com.hbm.sound.AudioWrapper;
import com.hbm.util.fauxpointtwelve.BlockPos; import com.hbm.util.fauxpointtwelve.BlockPos;
import api.hbm.fluidmk2.IFluidUserMK2;
import api.hbm.tile.ILoadedTile; import api.hbm.tile.ILoadedTile;
import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.network.NetworkRegistry;
import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBuf;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.util.ForgeDirection;
public class TileEntityLoadedBase extends TileEntity implements ILoadedTile, IBufPacketReceiver { public class TileEntityLoadedBase extends TileEntity implements ILoadedTile, IBufPacketReceiver {
@ -29,8 +33,6 @@ public class TileEntityLoadedBase extends TileEntity implements ILoadedTile, IBu
public void onChunkUnload() { public void onChunkUnload() {
super.onChunkUnload(); super.onChunkUnload();
this.isLoaded = false; this.isLoaded = false;
if(this instanceof IFluidUserMK2) markChanged();
} }
/** The "chunks is modified, pls don't forget to save me" effect of markDirty, minus the block updates */ /** The "chunks is modified, pls don't forget to save me" effect of markDirty, minus the block updates */
@ -101,8 +103,59 @@ public class TileEntityLoadedBase extends TileEntity implements ILoadedTile, IBu
PacketThreading.createAllAroundThreadedPacket(packet, new NetworkRegistry.TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, range)); PacketThreading.createAllAroundThreadedPacket(packet, new NetworkRegistry.TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, range));
} }
public void checkTilt(BlockPos[] floor, boolean extraHeavy) { public void checkTilt(boolean extraHeavy) {
if(!GeneralConfig.enable528MachineGravity) { this.tilted = false; return; }
if(this.getFloorCount() <= 0) { this.tilted = false; return; }
if(this.worldObj.getTotalWorldTime() % 20 != 0) return; if(this.worldObj.getTotalWorldTime() % 20 != 0) return;
// TBI i need a break
if(this.tiltBlocksChecked >= this.getFloorCount()) {
if(this.tiltBlocksValid >= this.tiltBlocksChecked * 0.95) {
this.tilted = false;
} else {
// if(!this.tiled) play sound
this.tilted = true;
}
this.markChanged();
this.tiltBlocksChecked = 0;
this.tiltBlocksValid = 0;
}
BlockPos pos = getFloorPosFromIndex(this.tiltBlocksChecked);
if(pos == null) return;
Block ground = worldObj.getBlock(pos.getX(), pos.getY(), pos.getZ());
this.tiltBlocksChecked++;
// for extra heavy machines, the ground needs to:
// * be a fully solid block (side UP is checked for custom behavior)
// * be opaque
// * NOT be sand, cloth or ground material
// * have an explosion resistance of stone or greater
if(extraHeavy) {
if(!ground.isBlockSolid(worldObj, pos.getX(), pos.getY(), pos.getZ(), 1)) return;
if(!ground.isNormalCube()) return;
if(ground.getMaterial() == Material.sand || ground.getMaterial() == Material.cloth || ground.getMaterial() == Material.ground) return;
if(ground.getExplosionResistance(null) < Blocks.stone.getExplosionResistance(null)) return;
this.tiltBlocksValid++;
// for standard machines, the ground needs to:
// * be solid at the top
// * NOT be sand
} else {
if(!ground.isSideSolid(worldObj, pos.getX(), pos.getY(), pos.getZ(), ForgeDirection.UP)) return;
if(ground.getMaterial() == Material.sand) return;
this.tiltBlocksValid++;
}
}
public int getFloorCount() { return 0; }
public BlockPos getFloorPosFromIndex(int index) { return null; }
public BlockPos standardFloor3x3(int index) {
return new BlockPos(xCoord - 1 + (index / 2) * 2, yCoord - 1, zCoord - 2 + (index % 2) * 2);
}
public BlockPos standardFloor5x5(int index) {
return new BlockPos(xCoord - 2 + (index / 3) * 2, yCoord - 1, zCoord - 2 + (index % 3) * 2);
} }
} }

View File

@ -26,9 +26,10 @@ import com.hbm.tileentity.IGUIProvider;
import com.hbm.tileentity.TileEntityMachineBase; import com.hbm.tileentity.TileEntityMachineBase;
import com.hbm.util.CompatEnergyControl; import com.hbm.util.CompatEnergyControl;
import com.hbm.util.EnumUtil; import com.hbm.util.EnumUtil;
import com.hbm.util.fauxpointtwelve.BlockPos;
import com.hbm.util.fauxpointtwelve.DirPos; import com.hbm.util.fauxpointtwelve.DirPos;
import api.hbm.fluid.IFluidStandardTransceiver; import api.hbm.fluidmk2.IFluidStandardTransceiverMK2;
import api.hbm.redstoneoverradio.IRORValueProvider; import api.hbm.redstoneoverradio.IRORValueProvider;
import api.hbm.redstoneoverradio.IRORInteractive; import api.hbm.redstoneoverradio.IRORInteractive;
import api.hbm.tile.IInfoProviderEC; import api.hbm.tile.IInfoProviderEC;
@ -51,7 +52,7 @@ import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.common.util.ForgeDirection;
@Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "OpenComputers")}) @Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "OpenComputers")})
public class TileEntityReactorZirnox extends TileEntityMachineBase implements IControlReceiver, IFluidStandardTransceiver, SimpleComponent, IGUIProvider, IInfoProviderEC, CompatHandler.OCComponent, IRORValueProvider, IRORInteractive { public class TileEntityReactorZirnox extends TileEntityMachineBase implements IControlReceiver, IFluidStandardTransceiverMK2, SimpleComponent, IGUIProvider, IInfoProviderEC, CompatHandler.OCComponent, IRORValueProvider, IRORInteractive {
public int heat; public int heat;
public static final int maxHeat = 100000; public static final int maxHeat = 100000;
@ -187,12 +188,14 @@ public class TileEntityReactorZirnox extends TileEntityMachineBase implements IC
public void updateEntity() { public void updateEntity() {
if(!worldObj.isRemote) { if(!worldObj.isRemote) {
this.checkTilt(true);
if (redstonePowered) { if (redstonePowered) {
isOn = true; isOn = true;
} }
this.output = 0; this.output = 0;
if(worldObj.getTotalWorldTime() % 20 == 0) { if(!tilted && worldObj.getTotalWorldTime() % 20 == 0) {
this.updateConnections(); this.updateConnections();
} }
@ -225,8 +228,8 @@ public class TileEntityReactorZirnox extends TileEntityMachineBase implements IC
} }
for(DirPos pos : getConPos()) { if(!this.tilted) for(DirPos pos : getConPos()) {
this.sendFluid(steam, worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); this.tryProvide(steam, worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir());
} }
checkIfMeltdown(); checkIfMeltdown();
@ -235,6 +238,9 @@ public class TileEntityReactorZirnox extends TileEntityMachineBase implements IC
} }
} }
@Override public int getFloorCount() { return 3 * 3; }
@Override public BlockPos getFloorPosFromIndex(int index) { return this.standardFloor5x5(index); }
@Override @Override
public void serialize(ByteBuf buf) { public void serialize(ByteBuf buf) {
super.serialize(buf); super.serialize(buf);

View File

@ -98,6 +98,7 @@ public class TileEntityFusionTorus extends TileEntityCooledBase implements IGUIP
public void updateEntity() { public void updateEntity() {
if(!worldObj.isRemote) { if(!worldObj.isRemote) {
this.checkTilt(true);
for(int i = 0; i < 4; i++) { for(int i = 0; i < 4; i++) {
if(klystronNodes[i] == null || klystronNodes[i].expired) klystronNodes[i] = createNode(KlystronNetworkProvider.THE_PROVIDER, ForgeDirection.getOrientation(i + 2)); if(klystronNodes[i] == null || klystronNodes[i].expired) klystronNodes[i] = createNode(KlystronNetworkProvider.THE_PROVIDER, ForgeDirection.getOrientation(i + 2));
@ -177,7 +178,7 @@ public class TileEntityFusionTorus extends TileEntityCooledBase implements IGUIP
this.plasmaEnergy = 0; this.plasmaEnergy = 0;
this.fuelConsumption = 0; this.fuelConsumption = 0;
this.fusionModule.preUpdate(factor, collectors * 0.5D); this.fusionModule.preUpdate(factor, collectors * 0.5D);
this.fusionModule.update(1D, 1D, this.isCool() && ignition, slots[1]); this.fusionModule.update(1D, 1D, !this.tilted && this.isCool() && ignition, slots[1]);
this.didProcess = this.fusionModule.didProcess; this.didProcess = this.fusionModule.didProcess;
if(this.fusionModule.markDirty) this.markDirty(); if(this.fusionModule.markDirty) this.markDirty();
if(didProcess && recipe != null) { if(didProcess && recipe != null) {
@ -394,6 +395,15 @@ public class TileEntityFusionTorus extends TileEntityCooledBase implements IGUIP
}; };
} }
@Override public int getFloorCount() { return 6 * 6; }
@Override public BlockPos getFloorPosFromIndex(int index) {
return new BlockPos(
xCoord - 5 + (index / 6) * 2,
yCoord - 1,
zCoord - 5 + (index % 6) * 2
);
}
@Override @Override
public boolean isItemValidForSlot(int slot, ItemStack stack) { public boolean isItemValidForSlot(int slot, ItemStack stack) {
if(slot == 0) return true; // battery if(slot == 0) return true; // battery

View File

@ -24,6 +24,7 @@ import com.hbm.tileentity.IUpgradeInfoProvider;
import com.hbm.tileentity.TileEntityMachineBase; import com.hbm.tileentity.TileEntityMachineBase;
import com.hbm.util.CompatEnergyControl; import com.hbm.util.CompatEnergyControl;
import com.hbm.util.ParticleUtil; import com.hbm.util.ParticleUtil;
import com.hbm.util.fauxpointtwelve.BlockPos;
import com.hbm.util.fauxpointtwelve.DirPos; import com.hbm.util.fauxpointtwelve.DirPos;
import com.hbm.util.i18n.I18nUtil; import com.hbm.util.i18n.I18nUtil;
@ -104,6 +105,7 @@ public class TileEntityMachineGasFlare extends TileEntityMachineBase implements
public void updateEntity() { public void updateEntity() {
if(!worldObj.isRemote) { if(!worldObj.isRemote) {
this.checkTilt(false);
this.fluidUsed = 0; this.fluidUsed = 0;
this.output = 0; this.output = 0;
@ -247,6 +249,9 @@ public class TileEntityMachineGasFlare extends TileEntityMachineBase implements
} }
} }
@Override public int getFloorCount() { return 2 * 2; }
@Override public BlockPos getFloorPosFromIndex(int index) { return this.standardFloor3x3(index); }
public DirPos[] getConPos() { public DirPos[] getConPos() {
return new DirPos[] { return new DirPos[] {
new DirPos(xCoord + 2, yCoord, zCoord, Library.POS_X), new DirPos(xCoord + 2, yCoord, zCoord, Library.POS_X),

View File

@ -27,6 +27,7 @@ import com.hbm.main.MainRegistry;
import com.hbm.sound.AudioWrapper; import com.hbm.sound.AudioWrapper;
import com.hbm.tileentity.*; import com.hbm.tileentity.*;
import com.hbm.util.ParticleUtil; import com.hbm.util.ParticleUtil;
import com.hbm.util.fauxpointtwelve.BlockPos;
import com.hbm.util.fauxpointtwelve.DirPos; import com.hbm.util.fauxpointtwelve.DirPos;
import api.hbm.energymk2.IEnergyReceiverMK2; import api.hbm.energymk2.IEnergyReceiverMK2;
@ -132,6 +133,7 @@ public class TileEntityMachineRefinery extends TileEntityMachineBase implements
public void updateEntity() { public void updateEntity() {
if(!worldObj.isRemote) { if(!worldObj.isRemote) {
this.checkTilt(false);
this.isOn = false; this.isOn = false;
@ -220,6 +222,9 @@ public class TileEntityMachineRefinery extends TileEntityMachineBase implements
} }
} }
@Override public int getFloorCount() { return 2 * 2; }
@Override public BlockPos getFloorPosFromIndex(int index) { return this.standardFloor3x3(index); }
@Override @Override
public AudioWrapper createAudioLoop() { public AudioWrapper createAudioLoop() {
return MainRegistry.proxy.getLoopedSound("hbm:block.boiler", xCoord, yCoord, zCoord, 0.25F, 15F, 1.0F, 20); return MainRegistry.proxy.getLoopedSound("hbm:block.boiler", xCoord, yCoord, zCoord, 0.25F, 15F, 1.0F, 20);

View File

@ -296,20 +296,9 @@ public class TileEntityBarrel extends TileEntityMachineBase implements SimpleCom
return fluid == tank.getTankType(); return fluid == tank.getTankType();
} }
@Override @Override public FluidTank[] getSendingTanks() { return (mode == 1 || mode == 2) ? new FluidTank[] {tank} : new FluidTank[0]; }
public FluidTank[] getSendingTanks() { @Override public FluidTank[] getReceivingTanks() { return (mode == 0 || mode == 1) ? new FluidTank[] {tank} : new FluidTank[0]; }
return (mode == 1 || mode == 2) ? new FluidTank[] {tank} : new FluidTank[0]; @Override public FluidTank[] getAllTanks() { return new FluidTank[] { tank }; }
}
@Override
public FluidTank[] getReceivingTanks() {
return (mode == 0 || mode == 1) ? new FluidTank[] {tank} : new FluidTank[0];
}
@Override
public FluidTank[] getAllTanks() {
return new FluidTank[] { tank };
}
@Override @Override
public ConnectionPriority getFluidPriority() { public ConnectionPriority getFluidPriority() {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 626 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB