Fixed rain not putting out fires due to a mistranslation issue.

This commit is contained in:
EvilSeph 2011-04-25 21:08:52 -04:00
parent d2a4c510b3
commit b2c558eab1

View File

@ -50,6 +50,10 @@ public class BlockFire extends Block {
public void a(World world, int i, int j, int k, Random random) { public void a(World world, int i, int j, int k, Random random) {
boolean flag = world.getTypeId(i, j - 1, k) == Block.NETHERRACK.id; boolean flag = world.getTypeId(i, j - 1, k) == Block.NETHERRACK.id;
if (!flag && world.v() && (world.q(i, j, k) || world.q(i - 1, j, k) || world.q(i + 1, j, k) || world.q(i, j, k - 1) || world.q(i, j, k + 1))) {
world.setTypeId(i, j, k, 0);
} else {
int l = world.getData(i, j, k); int l = world.getData(i, j, k);
if (l < 15) { if (l < 15) {
@ -92,7 +96,7 @@ public class BlockFire extends Block {
int i2 = this.h(world, i1, k1, j1); int i2 = this.h(world, i1, k1, j1);
if (i2 > 0 && random.nextInt(l1) <= i2) { if (i2 > 0 && random.nextInt(l1) <= i2 && (!world.v() || !world.q(i1, k1, j1)) && !world.q(i1 - 1, k1, k) && !world.q(i1 + 1, k1, j1) && !world.q(i1, k1, j1 - 1) && !world.q(i1, k1, j1 + 1)) {
// CraftBukkit start - Call to stop spread of fire. // CraftBukkit start - Call to stop spread of fire.
org.bukkit.block.Block theBlock = cworld.getBlockAt(i1, k1, j1); org.bukkit.block.Block theBlock = cworld.getBlockAt(i1, k1, j1);
@ -112,6 +116,7 @@ public class BlockFire extends Block {
} }
} }
} }
}
if (l == 15) { if (l == 15) {
this.a(world, i + 1, j, k, 1, random); this.a(world, i + 1, j, k, 1, random);
@ -140,7 +145,7 @@ public class BlockFire extends Block {
} }
// CraftBukkit end // CraftBukkit end
if (random.nextInt(2) == 0) { if (random.nextInt(2) == 0 && !world.q(i, j, k)) {
world.setTypeId(i, j, k, this.id); world.setTypeId(i, j, k, this.id);
} else { } else {
world.setTypeId(i, j, k, 0); world.setTypeId(i, j, k, 0);
@ -173,7 +178,7 @@ public class BlockFire extends Block {
} }
} }
public boolean d() { public boolean n_() {
return false; return false;
} }