diff --git a/common/buildcraft/energy/BlockEngine.java b/common/buildcraft/energy/BlockEngine.java index 67760330..98c763a1 100644 --- a/common/buildcraft/energy/BlockEngine.java +++ b/common/buildcraft/energy/BlockEngine.java @@ -58,6 +58,15 @@ public class BlockEngine extends BlockContainer { return new TileEngine(); } + @Override + public boolean isBlockSolidOnSide(World world, int x, int y, int z, ForgeDirection side) { + TileEntity tile = world.getBlockTileEntity(x, y, z); + if (tile instanceof TileEngine) { + return ForgeDirection.getOrientation(((TileEngine) tile).orientation).getOpposite() == side; + } + return false; + } + @Override public void breakBlock(World world, int x, int y, int z, int par5, int par6) { TileEngine engine = ((TileEngine) world.getBlockTileEntity(x, y, z)); diff --git a/common/buildcraft/energy/TileEngine.java b/common/buildcraft/energy/TileEngine.java index 285596fa..d1a565ca 100644 --- a/common/buildcraft/energy/TileEngine.java +++ b/common/buildcraft/energy/TileEngine.java @@ -71,7 +71,7 @@ public class TileEngine extends TileBuildCraft implements IPowerReceptor, IInven createEngineIfNeeded(); } - engine.orientation = ForgeDirection.values()[orientation]; + engine.orientation = ForgeDirection.VALID_DIRECTIONS[orientation]; provider.configure(0, engine.minEnergyReceived(), engine.maxEnergyReceived(), 1, engine.maxEnergy); checkRedstonePower(); } @@ -170,7 +170,7 @@ public class TileEngine extends TileBuildCraft implements IPowerReceptor, IInven engine = newEngine(kind); - engine.orientation = ForgeDirection.values()[orientation]; + engine.orientation = ForgeDirection.VALID_DIRECTIONS[orientation]; worldObj.notifyBlockChange(xCoord, yCoord, zCoord, BuildCraftEnergy.engineBlock.blockID); } }