diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/BlockStationary.java')
-rw-r--r-- | src/main/java/net/minecraft/server/BlockStationary.java | 43 |
1 files changed, 22 insertions, 21 deletions
diff --git a/src/main/java/net/minecraft/server/BlockStationary.java b/src/main/java/net/minecraft/server/BlockStationary.java index 452449aa..1a0d81a7 100644 --- a/src/main/java/net/minecraft/server/BlockStationary.java +++ b/src/main/java/net/minecraft/server/BlockStationary.java @@ -17,7 +17,7 @@ public class BlockStationary extends BlockFluids { public void b(World world, int k, int l, int i1, int j1) { super.b(world, k, l, i1, j1); - if (world.a(k, l, i1) == bh) { + if (world.a(k, l, i1) == bi) { i(world, k, l, i1); } } @@ -26,41 +26,42 @@ public class BlockStationary extends BlockFluids { int j1 = world.b(k, l, i1); world.i = true; - world.a(k, l, i1, bh - 1, j1); + world.a(k, l, i1, bi - 1, j1); world.b(k, l, i1, k, l, i1); - world.h(k, l, i1, bh - 1); + world.h(k, l, i1, bi - 1); world.i = false; } - @Override public void a(World world, int k, int l, int i1, Random random) { - if (bs == Material.g) { + if (bt == Material.g) { int j1 = random.nextInt(3); - // CraftBukkit: prevent lava putting something on fire. + + // Craftbukkit start: prevent lava putting something on fire. CraftServer server = ((WorldServer)world).getServer(); CraftWorld cworld = ((WorldServer)world).getWorld(); org.bukkit.Block bblock = (cworld.getBlockAt(k, l, i1)); BlockIgniteEvent event = new BlockIgniteEvent((org.bukkit.Block) bblock, BlockIgniteEvent.IgniteCause.LAVA, null); server.getPluginManager().callEvent(event); if (event.isCancelled()) { - ; - } else { - for (int k1 = 0; k1 < j1; k1++) { - k += random.nextInt(3) - 1; - l++; - i1 += random.nextInt(3) - 1; - int l1 = world.a(k, l, i1); + return; + } + // Craftbukkit end - if (l1 == 0) { - if (j(world, k - 1, l, i1) || j(world, k + 1, l, i1) || j(world, k, l, i1 - 1) || j(world, k, l, i1 + 1) || j(world, k, l - 1, i1) || j(world, k, l + 1, i1)) { - world.d(k, l, i1, Block.ar.bh); - return; - } - continue; - } - if (Block.m[l1].bs.c()) { + for (int k1 = 0; k1 < j1; k1++) { + k += random.nextInt(3) - 1; + l++; + i1 += random.nextInt(3) - 1; + int l1 = world.a(k, l, i1); + + if (l1 == 0) { + if (j(world, k - 1, l, i1) || j(world, k + 1, l, i1) || j(world, k, l, i1 - 1) || j(world, k, l, i1 + 1) || j(world, k, l - 1, i1) || j(world, k, l + 1, i1)) { + world.e(k, l, i1, Block.ar.bi); return; } + continue; + } + if (Block.m[l1].bt.c()) { + return; } } } |