diff --git a/src/main/java/WayofTime/bloodmagic/altar/BloodAltar.java b/src/main/java/WayofTime/bloodmagic/altar/BloodAltar.java index 604a66e3..c1180afc 100644 --- a/src/main/java/WayofTime/bloodmagic/altar/BloodAltar.java +++ b/src/main/java/WayofTime/bloodmagic/altar/BloodAltar.java @@ -287,7 +287,7 @@ public class BloodAltar implements IFluidHandler public void startCycle() { if (tileAltar.getWorld() != null) - tileAltar.markDirty(); + tileAltar.getWorld().notifyBlockUpdate(tileAltar.getPos(), tileAltar.getWorld().getBlockState(tileAltar.getPos()), tileAltar.getWorld().getBlockState(tileAltar.getPos()), 3); checkTier(); @@ -355,7 +355,7 @@ public class BloodAltar implements IFluidHandler fluidOutputted = Math.min(this.fluid.amount, fluidOutputted); this.fluidOutput.amount += fluidOutputted; this.fluid.amount -= fluidOutputted; - tileAltar.markDirty(); + tileAltar.getWorld().notifyBlockUpdate(tileAltar.getPos(), tileAltar.getWorld().getBlockState(tileAltar.getPos()), tileAltar.getWorld().getBlockState(tileAltar.getPos()), 3); } if (internalCounter % this.getChargingFrequency() == 0 && !this.isActive) @@ -364,7 +364,7 @@ public class BloodAltar implements IFluidHandler chargeInputted = Math.min(chargeInputted, maxCharge - totalCharge); totalCharge += chargeInputted; this.fluid.amount -= chargeInputted; - tileAltar.markDirty(); + tileAltar.getWorld().notifyBlockUpdate(tileAltar.getPos(), tileAltar.getWorld().getBlockState(tileAltar.getPos()), tileAltar.getWorld().getBlockState(tileAltar.getPos()), 3); } if (internalCounter % 100 == 0 && (this.isActive || this.cooldownAfterCrafting <= 0)) @@ -491,7 +491,7 @@ public class BloodAltar implements IFluidHandler } } - tileAltar.markDirty(); + tileAltar.getWorld().notifyBlockUpdate(tileAltar.getPos(), tileAltar.getWorld().getBlockState(tileAltar.getPos()), tileAltar.getWorld().getBlockState(tileAltar.getPos()), 3); } public void checkTier() @@ -546,7 +546,7 @@ public class BloodAltar implements IFluidHandler if (this.totalCharge > this.maxCharge) this.totalCharge = this.maxCharge; - tileAltar.markDirty(); + tileAltar.getWorld().notifyBlockUpdate(tileAltar.getPos(), tileAltar.getWorld().getBlockState(tileAltar.getPos()), tileAltar.getWorld().getBlockState(tileAltar.getPos()), 3); } public int fillMainTank(int amount) diff --git a/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSacrifice.java b/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSacrifice.java index ee74b10b..db4752d0 100644 --- a/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSacrifice.java +++ b/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSacrifice.java @@ -67,7 +67,7 @@ public class ItemPackSacrifice extends ItemArmor implements IAltarManipulator, I int filledAmount = altar.fillMainTank(amount); amount -= filledAmount; setStoredLP(stack, amount); - world.setBlockState(position.getBlockPos(), world.getBlockState(position.getBlockPos())); + world.notifyBlockUpdate(position.getBlockPos(), world.getBlockState(position.getBlockPos()), world.getBlockState(position.getBlockPos()), 3); } } } diff --git a/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSelfSacrifice.java b/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSelfSacrifice.java index 52bb551b..dba7438a 100644 --- a/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSelfSacrifice.java +++ b/src/main/java/WayofTime/bloodmagic/item/gear/ItemPackSelfSacrifice.java @@ -75,7 +75,7 @@ public class ItemPackSelfSacrifice extends ItemArmor implements IAltarManipulato int filledAmount = altar.fillMainTank(amount); amount -= filledAmount; setStoredLP(stack, amount); - world.setBlockState(position.getBlockPos(), world.getBlockState(position.getBlockPos())); + world.notifyBlockUpdate(position.getBlockPos(), world.getBlockState(position.getBlockPos()), world.getBlockState(position.getBlockPos()), 3); } } } diff --git a/src/main/java/WayofTime/bloodmagic/routing/DefaultItemFilter.java b/src/main/java/WayofTime/bloodmagic/routing/DefaultItemFilter.java index 9d51c743..7ade0d12 100644 --- a/src/main/java/WayofTime/bloodmagic/routing/DefaultItemFilter.java +++ b/src/main/java/WayofTime/bloodmagic/routing/DefaultItemFilter.java @@ -79,6 +79,7 @@ public class DefaultItemFilter implements IItemFilter TileEntity tile = (TileEntity) accessedInventory; World world = tile.getWorld(); BlockPos pos = tile.getPos(); + world.notifyBlockUpdate(pos, world.getBlockState(pos), world.getBlockState(pos), 3); return testStack; } @@ -135,6 +136,7 @@ public class DefaultItemFilter implements IItemFilter TileEntity tile = (TileEntity) accessedInventory; World world = tile.getWorld(); BlockPos pos = tile.getPos(); + world.notifyBlockUpdate(pos, world.getBlockState(pos), world.getBlockState(pos), 3); inputStack.stackSize -= changeAmount; maxTransfer -= changeAmount; diff --git a/src/main/java/WayofTime/bloodmagic/tile/TileInventory.java b/src/main/java/WayofTime/bloodmagic/tile/TileInventory.java index af0910b8..c7121cb0 100644 --- a/src/main/java/WayofTime/bloodmagic/tile/TileInventory.java +++ b/src/main/java/WayofTime/bloodmagic/tile/TileInventory.java @@ -130,6 +130,9 @@ public class TileInventory extends TileEntity implements IInventory { if (inventory[index] != null) { + if (!getWorld().isRemote) + getWorld().notifyBlockUpdate(getPos(), getWorld().getBlockState(getPos()), getWorld().getBlockState(getPos()), 3); + if (inventory[index].stackSize <= count) { ItemStack itemStack = inventory[index]; @@ -168,6 +171,8 @@ public class TileInventory extends TileEntity implements IInventory if (stack != null && stack.stackSize > getInventoryStackLimit()) stack.stackSize = getInventoryStackLimit(); markDirty(); + if (!getWorld().isRemote) + getWorld().notifyBlockUpdate(getPos(), getWorld().getBlockState(getPos()), getWorld().getBlockState(getPos()), 3); } @Override diff --git a/src/main/java/WayofTime/bloodmagic/tile/TileSpectralBlock.java b/src/main/java/WayofTime/bloodmagic/tile/TileSpectralBlock.java index 0d29e231..9c642a11 100644 --- a/src/main/java/WayofTime/bloodmagic/tile/TileSpectralBlock.java +++ b/src/main/java/WayofTime/bloodmagic/tile/TileSpectralBlock.java @@ -75,7 +75,7 @@ public class TileSpectralBlock extends TileEntity implements ITickable block = Block.getBlockFromName(containedBlockName); if (block != null && worldObj.setBlockState(pos, block.getStateFromMeta(containedBlockMeta))) - markDirty(); + getWorld().notifyBlockUpdate(getPos(), getWorld().getBlockState(getPos()), getWorld().getBlockState(getPos()), 3); } public static void createSpectralBlock(World world, BlockPos blockPos, int duration) diff --git a/src/main/java/WayofTime/bloodmagic/tile/routing/TileRoutingNode.java b/src/main/java/WayofTime/bloodmagic/tile/routing/TileRoutingNode.java index 1f50dc34..2a8e8a47 100644 --- a/src/main/java/WayofTime/bloodmagic/tile/routing/TileRoutingNode.java +++ b/src/main/java/WayofTime/bloodmagic/tile/routing/TileRoutingNode.java @@ -80,7 +80,7 @@ public class TileRoutingNode extends TileInventory implements IRoutingNode, IIte if (tile instanceof IRoutingNode) { ((IRoutingNode) tile).removeConnection(pos); - markDirty(); + getWorld().notifyBlockUpdate(getPos(), getWorld().getBlockState(getPos()), getWorld().getBlockState(getPos()), 3); } } @@ -156,7 +156,7 @@ public class TileRoutingNode extends TileInventory implements IRoutingNode, IIte { if (!connectionList.contains(pos1)) { - markDirty(); + getWorld().notifyBlockUpdate(getPos(), getWorld().getBlockState(getPos()), getWorld().getBlockState(getPos()), 3); connectionList.add(pos1); } } @@ -167,7 +167,7 @@ public class TileRoutingNode extends TileInventory implements IRoutingNode, IIte if (connectionList.contains(pos1)) { connectionList.remove(pos1); - markDirty(); + getWorld().notifyBlockUpdate(getPos(), getWorld().getBlockState(getPos()), getWorld().getBlockState(getPos()), 3); } }