diff --git a/src/main/java/storagecraft/gui/GuiGrid.java b/src/main/java/storagecraft/gui/GuiGrid.java index d0f2077d4..d51c3cd94 100755 --- a/src/main/java/storagecraft/gui/GuiGrid.java +++ b/src/main/java/storagecraft/gui/GuiGrid.java @@ -211,7 +211,7 @@ public class GuiGrid extends GuiBase if (isHoveringOverValidSlot()) { - drawTooltip(mouseX, mouseY, getItems().get(hoveringSlotId).toItemStack()); + drawTooltip(mouseX, mouseY, items.get(hoveringSlotId).toItemStack()); } if (grid.getType() == EnumGridType.CRAFTING && isHoveringOverClear(mouseX, mouseY)) diff --git a/src/main/java/storagecraft/tile/TileController.java b/src/main/java/storagecraft/tile/TileController.java index f1f93e1e7..6ac51c78d 100755 --- a/src/main/java/storagecraft/tile/TileController.java +++ b/src/main/java/storagecraft/tile/TileController.java @@ -125,7 +125,6 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor } if (lastEnergy != energy.getEnergyStored()) { - worldObj.markBlockForUpdate(pos); worldObj.updateComparatorOutputLevel(pos, StorageCraftBlocks.CONTROLLER); } } @@ -367,7 +366,14 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor @Override public void fromBytes(ByteBuf buf) { + int lastEnergy = energy.getEnergyStored(); + energy.setEnergyStored(buf.readInt()); + + if (lastEnergy != energy.getEnergyStored()) { + worldObj.markBlockForUpdate(pos); + } + energyUsage = buf.readInt(); redstoneMode = RedstoneMode.getById(buf.readInt()); diff --git a/src/main/java/storagecraft/tile/TileDetector.java b/src/main/java/storagecraft/tile/TileDetector.java index 823297994..003683f0a 100755 --- a/src/main/java/storagecraft/tile/TileDetector.java +++ b/src/main/java/storagecraft/tile/TileDetector.java @@ -101,8 +101,7 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven if (powered != lastPowered) { - worldObj.markBlockForUpdate(pos); - worldObj.notifyBlockOfStateChange(pos, StorageCraftBlocks.DETECTOR); + worldObj.notifyBlockOfStateChange(pos, StorageCraftBlocks.DETECTOR); // @TODO: redstone update } } } @@ -191,7 +190,14 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven compare = buf.readInt(); mode = buf.readInt(); amount = buf.readInt(); + + boolean lastPowered = powered; + powered = buf.readBoolean(); + + if (powered != lastPowered) { + worldObj.markBlockForUpdate(pos); + } } @Override