From 3e0a26f270b46a4edd334113443dd3c2a3fcdc49 Mon Sep 17 00:00:00 2001 From: EvilSeph Date: Tue, 24 Jan 2012 23:09:01 -0500 Subject: Fixed redstone torches not updating indirect neighbors. Fixes BUKKIT-477 --- .../java/net/minecraft/server/BlockRedstoneTorch.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/net/minecraft/server/BlockRedstoneTorch.java b/src/main/java/net/minecraft/server/BlockRedstoneTorch.java index 58e26f19..f369c0fb 100644 --- a/src/main/java/net/minecraft/server/BlockRedstoneTorch.java +++ b/src/main/java/net/minecraft/server/BlockRedstoneTorch.java @@ -55,15 +55,14 @@ public class BlockRedstoneTorch extends BlockTorch { public void postPlace(World world, int i, int j, int k, int l) { super.postPlace(world, i, j, k, l); + + world.applyPhysics(i, j - 1, k, this.id); + world.applyPhysics(i, j + 1, k, this.id); + world.applyPhysics(i - 1, j, k, this.id); + world.applyPhysics(i + 1, j, k, this.id); + world.applyPhysics(i, j, k - 1, this.id); + world.applyPhysics(i, j, k + 1, this.id); // CraftBukkit end - if (this.isOn) { - world.applyPhysics(i, j - 1, k, this.id); - world.applyPhysics(i, j + 1, k, this.id); - world.applyPhysics(i - 1, j, k, this.id); - world.applyPhysics(i + 1, j, k, this.id); - world.applyPhysics(i, j, k - 1, this.id); - world.applyPhysics(i, j, k + 1, this.id); - } } public void remove(World world, int i, int j, int k) { @@ -121,6 +120,7 @@ public class BlockRedstoneTorch extends BlockTorch { // CraftBukkit end world.setTypeIdAndData(i, j, k, Block.REDSTONE_TORCH_OFF.id, world.getData(i, j, k)); + this.postPlace(world, i, j, k, this.id); // CraftBukkit - update indirect neighbors if (this.a(world, i, j, k, true)) { world.makeSound((double) ((float) i + 0.5F), (double) ((float) j + 0.5F), (double) ((float) k + 0.5F), "random.fizz", 0.5F, 2.6F + (world.random.nextFloat() - world.random.nextFloat()) * 0.8F); @@ -145,6 +145,7 @@ public class BlockRedstoneTorch extends BlockTorch { // CraftBukkit end world.setTypeIdAndData(i, j, k, Block.REDSTONE_TORCH_ON.id, world.getData(i, j, k)); + this.postPlace(world, i, j, k, this.id); // CraftBukkit - update indirect neighbors } } -- cgit v1.2.3