From 7a65a887354af67e507c93683f524a9792d23e1f Mon Sep 17 00:00:00 2001 From: Ben Spiers Date: Sun, 13 Oct 2013 11:54:01 +0100 Subject: [PATCH] Fix advanced furnaces secretly invalidating themselves without telling anyone --- .../TileEntityAdvancedFurnace.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/resonantinduction/TileEntityAdvancedFurnace.java b/src/resonantinduction/TileEntityAdvancedFurnace.java index ef306ff9f..96ca33b92 100644 --- a/src/resonantinduction/TileEntityAdvancedFurnace.java +++ b/src/resonantinduction/TileEntityAdvancedFurnace.java @@ -95,6 +95,8 @@ public class TileEntityAdvancedFurnace extends TileEntityFurnace implements IEle if (doBlockStateUpdate != this.furnaceBurnTime > 0) { BlockFurnace.updateFurnaceBlockState(this.furnaceBurnTime > 0, this.worldObj, this.xCoord, this.yCoord, this.zCoord); + if (this.isInvalid()) + this.refreshConductors(); } } } @@ -121,6 +123,19 @@ public class TileEntityAdvancedFurnace extends TileEntityFurnace implements IEle this.doProduce = false; } + public void refreshConductors() + { + for (ForgeDirection direction : ForgeDirection.VALID_DIRECTIONS) + { + TileEntity tileEntity = new Vector3(this).modifyPositionFromSide(direction).getTileEntity(this.worldObj); + + if (tileEntity instanceof IConductor) + { + ((IConductor)tileEntity).refresh(); + } + } + } + /** * Produces UE power towards a specific direction. *