diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/BlockPiston.java')
-rw-r--r-- | src/main/java/net/minecraft/server/BlockPiston.java | 139 |
1 files changed, 69 insertions, 70 deletions
diff --git a/src/main/java/net/minecraft/server/BlockPiston.java b/src/main/java/net/minecraft/server/BlockPiston.java index 2d9e7669..7822de7d 100644 --- a/src/main/java/net/minecraft/server/BlockPiston.java +++ b/src/main/java/net/minecraft/server/BlockPiston.java @@ -12,15 +12,15 @@ public class BlockPiston extends Block { private final boolean a; - public BlockPiston(int i, boolean flag) { - super(i, Material.PISTON); + public BlockPiston(boolean flag) { + super(Material.PISTON); this.a = flag; - this.a(k); + this.a(i); this.c(0.5F); this.a(CreativeModeTab.d); } - public int d() { + public int b() { return 16; } @@ -37,32 +37,32 @@ public class BlockPiston extends Block { world.setData(i, j, k, l, 2); if (!world.isStatic) { - this.k(world, i, j, k); + this.e(world, i, j, k); } } - public void doPhysics(World world, int i, int j, int k, int l) { + public void doPhysics(World world, int i, int j, int k, Block block) { if (!world.isStatic) { - this.k(world, i, j, k); + this.e(world, i, j, k); } } public void onPlace(World world, int i, int j, int k) { if (!world.isStatic && world.getTileEntity(i, j, k) == null) { - this.k(world, i, j, k); + this.e(world, i, j, k); } } - private void k(World world, int i, int j, int k) { + private void e(World world, int i, int j, int k) { int l = world.getData(i, j, k); - int i1 = d(l); + int i1 = b(l); if (i1 != 7) { - boolean flag = this.d(world, i, j, k, i1); + boolean flag = this.a(world, i, j, k, i1); - if (flag && !e(l)) { + if (flag && !c(l)) { // CraftBukkit start - int length = e(world, i, j, k, i1); + int length = h(world, i, j, k, i1); if (length >= 0) { org.bukkit.block.Block block = world.getWorld().getBlockAt(i, j, k); BlockPistonExtendEvent event = new BlockPistonExtendEvent(block, length, CraftBlock.notchToBlockFace(i1)); @@ -73,9 +73,9 @@ public class BlockPiston extends Block { } // CraftBukkit end - world.playNote(i, j, k, this.id, 0, i1); + world.playNote(i, j, k, this, 0, i1); } - } else if (!flag && e(l)) { + } else if (!flag && c(l)) { // CraftBukkit start org.bukkit.block.Block block = world.getWorld().getBlockAt(i, j, k); BlockPistonRetractEvent event = new BlockPistonRetractEvent(block, CraftBlock.notchToBlockFace(i1)); @@ -87,18 +87,18 @@ public class BlockPiston extends Block { // CraftBukkit end world.setData(i, j, k, i1, 2); - world.playNote(i, j, k, this.id, 1, i1); + world.playNote(i, j, k, this, 1, i1); } } } - private boolean d(World world, int i, int j, int k, int l) { + private boolean a(World world, int i, int j, int k, int l) { return l != 0 && world.isBlockFacePowered(i, j - 1, k, 0) ? true : (l != 1 && world.isBlockFacePowered(i, j + 1, k, 1) ? true : (l != 2 && world.isBlockFacePowered(i, j, k - 1, 2) ? true : (l != 3 && world.isBlockFacePowered(i, j, k + 1, 3) ? true : (l != 5 && world.isBlockFacePowered(i + 1, j, k, 5) ? true : (l != 4 && world.isBlockFacePowered(i - 1, j, k, 4) ? true : (world.isBlockFacePowered(i, j, k, 0) ? true : (world.isBlockFacePowered(i, j + 2, k, 1) ? true : (world.isBlockFacePowered(i, j + 1, k - 1, 2) ? true : (world.isBlockFacePowered(i, j + 1, k + 1, 3) ? true : (world.isBlockFacePowered(i - 1, j + 1, k, 4) ? true : world.isBlockFacePowered(i + 1, j + 1, k, 5))))))))))); } - public boolean b(World world, int i, int j, int k, int l, int i1) { + public boolean a(World world, int i, int j, int k, int l, int i1) { if (!world.isStatic) { - boolean flag = this.d(world, i, j, k, i1); + boolean flag = this.a(world, i, j, k, i1); if (flag && l == 1) { world.setData(i, j, k, i1 | 8, 2); @@ -111,7 +111,7 @@ public class BlockPiston extends Block { } if (l == 0) { - if (!this.f(world, i, j, k, i1)) { + if (!this.i(world, i, j, k, i1)) { return false; } @@ -124,17 +124,17 @@ public class BlockPiston extends Block { ((TileEntityPiston) tileentity).f(); } - world.setTypeIdAndData(i, j, k, Block.PISTON_MOVING.id, i1, 3); - world.setTileEntity(i, j, k, BlockPistonMoving.a(this.id, i1, i1, false, true)); + world.setTypeAndData(i, j, k, Blocks.PISTON_MOVING, i1, 3); + world.setTileEntity(i, j, k, BlockPistonMoving.a(this, i1, i1, false, true)); if (this.a) { int j1 = i + Facing.b[i1] * 2; int k1 = j + Facing.c[i1] * 2; int l1 = k + Facing.d[i1] * 2; - int i2 = world.getTypeId(j1, k1, l1); - int j2 = world.getData(j1, k1, l1); + Block block = world.getType(j1, k1, l1); + int i2 = world.getData(j1, k1, l1); boolean flag1 = false; - if (i2 == Block.PISTON_MOVING.id) { + if (block == Blocks.PISTON_MOVING) { TileEntity tileentity1 = world.getTileEntity(j1, k1, l1); if (tileentity1 instanceof TileEntityPiston) { @@ -142,19 +142,19 @@ public class BlockPiston extends Block { if (tileentitypiston.c() == i1 && tileentitypiston.b()) { tileentitypiston.f(); - i2 = tileentitypiston.a(); - j2 = tileentitypiston.p(); + block = tileentitypiston.a(); + i2 = tileentitypiston.p(); flag1 = true; } } } - if (!flag1 && i2 > 0 && a(i2, world, j1, k1, l1, false) && (Block.byId[i2].h() == 0 || i2 == Block.PISTON.id || i2 == Block.PISTON_STICKY.id)) { + if (!flag1 && block.getMaterial() != Material.AIR && a(block, world, j1, k1, l1, false) && (block.h() == 0 || block == Blocks.PISTON || block == Blocks.PISTON_STICKY)) { i += Facing.b[i1]; j += Facing.c[i1]; k += Facing.d[i1]; - world.setTypeIdAndData(i, j, k, Block.PISTON_MOVING.id, j2, 3); - world.setTileEntity(i, j, k, BlockPistonMoving.a(i2, j2, i1, false, false)); + world.setTypeAndData(i, j, k, Blocks.PISTON_MOVING, i2, 3); + world.setTileEntity(i, j, k, BlockPistonMoving.a(block, i2, i1, false, false)); world.setAir(j1, k1, l1); } else if (!flag1) { world.setAir(i + Facing.b[i1], j + Facing.c[i1], k + Facing.d[i1]); @@ -172,10 +172,10 @@ public class BlockPiston extends Block { public void updateShape(IBlockAccess iblockaccess, int i, int j, int k) { int l = iblockaccess.getData(i, j, k); - if (e(l)) { + if (c(l)) { float f = 0.25F; - switch (d(l)) { + switch (b(l)) { case 0: this.a(0.0F, 0.25F, 0.0F, 1.0F, 1.0F, 1.0F); break; @@ -213,21 +213,21 @@ public class BlockPiston extends Block { super.a(world, i, j, k, axisalignedbb, list, entity); } - public AxisAlignedBB b(World world, int i, int j, int k) { + public AxisAlignedBB a(World world, int i, int j, int k) { this.updateShape(world, i, j, k); - return super.b(world, i, j, k); + return super.a(world, i, j, k); } - public boolean b() { + public boolean d() { return false; } - public static int d(int i) { + public static int b(int i) { if ((i & 7) >= Facing.OPPOSITE_FACING.length) return 7; // CraftBukkit - check for AIOOB on piston data return i & 7; } - public static boolean e(int i) { + public static boolean c(int i) { return (i & 8) != 0; } @@ -249,36 +249,36 @@ public class BlockPiston extends Block { return l == 0 ? 2 : (l == 1 ? 5 : (l == 2 ? 3 : (l == 3 ? 4 : 0))); } - private static boolean a(int i, World world, int j, int k, int l, boolean flag) { - if (i == Block.OBSIDIAN.id) { + private static boolean a(Block block, World world, int i, int j, int k, boolean flag) { + if (block == Blocks.OBSIDIAN) { return false; } else { - if (i != Block.PISTON.id && i != Block.PISTON_STICKY.id) { - if (Block.byId[i].l(world, j, k, l) == -1.0F) { + if (block != Blocks.PISTON && block != Blocks.PISTON_STICKY) { + if (block.f(world, i, j, k) == -1.0F) { return false; } - if (Block.byId[i].h() == 2) { + if (block.h() == 2) { return false; } - if (Block.byId[i].h() == 1) { + if (block.h() == 1) { if (!flag) { return false; } return true; } - } else if (e(world.getData(j, k, l))) { + } else if (c(world.getData(i, j, k))) { return false; } - return !(Block.byId[i] instanceof IContainer); + return !(block instanceof IContainer); } } // CraftBukkit - boolean -> int return - private static int e(World world, int i, int j, int k, int l) { + private static int h(World world, int i, int j, int k, int l) { int i1 = i + Facing.b[l]; int j1 = j + Facing.c[l]; int k1 = k + Facing.d[l]; @@ -290,14 +290,14 @@ public class BlockPiston extends Block { return -1; // CraftBukkit } - int i2 = world.getTypeId(i1, j1, k1); + Block block = world.getType(i1, j1, k1); - if (i2 != 0) { - if (!a(i2, world, i1, j1, k1, true)) { + if (block.getMaterial() != Material.AIR) { + if (!a(block, world, i1, j1, k1, true)) { return -1; // CraftBukkit } - if (Block.byId[i2].h() != 1) { + if (block.h() != 1) { if (l1 == 12) { return -1; // CraftBukkit } @@ -315,27 +315,26 @@ public class BlockPiston extends Block { } } - private boolean f(World world, int i, int j, int k, int l) { + private boolean i(World world, int i, int j, int k, int l) { int i1 = i + Facing.b[l]; int j1 = j + Facing.c[l]; int k1 = k + Facing.d[l]; int l1 = 0; while (true) { - int i2; - if (l1 < 13) { if (j1 <= 0 || j1 >= 255) { return false; } - i2 = world.getTypeId(i1, j1, k1); - if (i2 != 0) { - if (!a(i2, world, i1, j1, k1, true)) { + Block block = world.getType(i1, j1, k1); + + if (block.getMaterial() != Material.AIR) { + if (!a(block, world, i1, j1, k1, true)) { return false; } - if (Block.byId[i2].h() != 1) { + if (block.h() != 1) { if (l1 == 12) { return false; } @@ -347,37 +346,37 @@ public class BlockPiston extends Block { continue; } - Block.byId[i2].c(world, i1, j1, k1, world.getData(i1, j1, k1), 0); + block.b(world, i1, j1, k1, world.getData(i1, j1, k1), 0); world.setAir(i1, j1, k1); } } l1 = i1; - i2 = j1; + int i2 = j1; int j2 = k1; int k2 = 0; - int[] aint; + Block[] ablock; int l2; int i3; int j3; - for (aint = new int[13]; i1 != i || j1 != j || k1 != k; k1 = j3) { + for (ablock = new Block[13]; i1 != i || j1 != j || k1 != k; k1 = j3) { l2 = i1 - Facing.b[l]; i3 = j1 - Facing.c[l]; j3 = k1 - Facing.d[l]; - int k3 = world.getTypeId(l2, i3, j3); - int l3 = world.getData(l2, i3, j3); + Block block1 = world.getType(l2, i3, j3); + int k3 = world.getData(l2, i3, j3); - if (k3 == this.id && l2 == i && i3 == j && j3 == k) { - world.setTypeIdAndData(i1, j1, k1, Block.PISTON_MOVING.id, l | (this.a ? 8 : 0), 4); - world.setTileEntity(i1, j1, k1, BlockPistonMoving.a(Block.PISTON_EXTENSION.id, l | (this.a ? 8 : 0), l, true, false)); + if (block1 == this && l2 == i && i3 == j && j3 == k) { + world.setTypeAndData(i1, j1, k1, Blocks.PISTON_MOVING, l | (this.a ? 8 : 0), 4); + world.setTileEntity(i1, j1, k1, BlockPistonMoving.a(Blocks.PISTON_EXTENSION, l | (this.a ? 8 : 0), l, true, false)); } else { - world.setTypeIdAndData(i1, j1, k1, Block.PISTON_MOVING.id, l3, 4); - world.setTileEntity(i1, j1, k1, BlockPistonMoving.a(k3, l3, l, true, false)); + world.setTypeAndData(i1, j1, k1, Blocks.PISTON_MOVING, k3, 4); + world.setTileEntity(i1, j1, k1, BlockPistonMoving.a(block1, k3, l, true, false)); } - aint[k2++] = k3; + ablock[k2++] = block1; i1 = l2; j1 = i3; } @@ -390,7 +389,7 @@ public class BlockPiston extends Block { l2 = i1 - Facing.b[l]; i3 = j1 - Facing.c[l]; j3 = k1 - Facing.d[l]; - world.applyPhysics(l2, i3, j3, aint[k2++]); + world.applyPhysics(l2, i3, j3, ablock[k2++]); i1 = l2; j1 = i3; } |