Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
at develop 91 lines 2.6 kB view raw
1package net.minecraft.server; 2 3import java.util.Random; 4 5public class BlockCake extends Block { 6 7 protected BlockCake(int i, int j) { 8 super(i, j, Material.CAKE); 9 this.a(true); 10 } 11 12 public void a(IBlockAccess iblockaccess, int i, int j, int k) { 13 int l = iblockaccess.getData(i, j, k); 14 float f = 0.0625F; 15 float f1 = (float) (1 + l * 2) / 16.0F; 16 float f2 = 0.5F; 17 18 this.a(f1, 0.0F, f, 1.0F - f, f2, 1.0F - f); 19 } 20 21 public AxisAlignedBB e(World world, int i, int j, int k) { 22 int l = world.getData(i, j, k); 23 float f = 0.0625F; 24 float f1 = (float) (1 + l * 2) / 16.0F; 25 float f2 = 0.5F; 26 27 return AxisAlignedBB.b((double) ((float) i + f1), (double) j, (double) ((float) k + f), (double) ((float) (i + 1) - f), (double) ((float) j + f2 - f), (double) ((float) (k + 1) - f)); 28 } 29 30 public int a(int i, int j) { 31 return i == 1 ? this.textureId : (i == 0 ? this.textureId + 3 : (j > 0 && i == 4 ? this.textureId + 2 : this.textureId + 1)); 32 } 33 34 public int a(int i) { 35 return i == 1 ? this.textureId : (i == 0 ? this.textureId + 3 : this.textureId + 1); 36 } 37 38 public boolean b() { 39 return false; 40 } 41 42 public boolean a() { 43 return false; 44 } 45 46 public boolean interact(World world, int i, int j, int k, EntityHuman entityhuman) { 47 this.c(world, i, j, k, entityhuman); 48 return true; 49 } 50 51 public void b(World world, int i, int j, int k, EntityHuman entityhuman) { 52 this.c(world, i, j, k, entityhuman); 53 } 54 55 private void c(World world, int i, int j, int k, EntityHuman entityhuman) { 56 if (entityhuman.health < 20) { 57 entityhuman.b(3); 58 int l = world.getData(i, j, k) + 1; 59 60 if (l >= 6) { 61 world.setTypeId(i, j, k, 0); 62 } else { 63 world.setData(i, j, k, l); 64 world.i(i, j, k); 65 } 66 } 67 } 68 69 public boolean canPlace(World world, int i, int j, int k) { 70 return !super.canPlace(world, i, j, k) ? false : this.f(world, i, j, k); 71 } 72 73 public void doPhysics(World world, int i, int j, int k, int l) { 74 if (!this.f(world, i, j, k)) { 75 this.g(world, i, j, k, world.getData(i, j, k)); 76 world.setTypeId(i, j, k, 0); 77 } 78 } 79 80 public boolean f(World world, int i, int j, int k) { 81 return world.getMaterial(i, j - 1, k).isBuildable(); 82 } 83 84 public int a(Random random) { 85 return 0; 86 } 87 88 public int a(int i, Random random) { 89 return 0; 90 } 91}