Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
at develop 96 lines 2.7 kB view raw
1package net.minecraft.server; 2 3import java.util.Random; 4 5public class BlockRedstoneOre extends Block { 6 7 private boolean a; 8 9 public BlockRedstoneOre(int i, int j, boolean flag) { 10 super(i, j, Material.STONE); 11 if (flag) { 12 this.a(true); 13 } 14 15 this.a = flag; 16 } 17 18 public int c() { 19 return 30; 20 } 21 22 public void b(World world, int i, int j, int k, EntityHuman entityhuman) { 23 this.g(world, i, j, k); 24 super.b(world, i, j, k, entityhuman); 25 } 26 27 public void b(World world, int i, int j, int k, Entity entity) { 28 this.g(world, i, j, k); 29 super.b(world, i, j, k, entity); 30 } 31 32 public boolean interact(World world, int i, int j, int k, EntityHuman entityhuman) { 33 this.g(world, i, j, k); 34 return super.interact(world, i, j, k, entityhuman); 35 } 36 37 private void g(World world, int i, int j, int k) { 38 this.h(world, i, j, k); 39 if (this.id == Block.REDSTONE_ORE.id) { 40 world.setTypeId(i, j, k, Block.GLOWING_REDSTONE_ORE.id); 41 } 42 } 43 44 public void a(World world, int i, int j, int k, Random random) { 45 if (this.id == Block.GLOWING_REDSTONE_ORE.id) { 46 world.setTypeId(i, j, k, Block.REDSTONE_ORE.id); 47 } 48 } 49 50 public int a(int i, Random random) { 51 return Item.REDSTONE.id; 52 } 53 54 public int a(Random random) { 55 return 4 + random.nextInt(2); 56 } 57 58 private void h(World world, int i, int j, int k) { 59 Random random = world.random; 60 double d0 = 0.0625D; 61 62 for (int l = 0; l < 6; ++l) { 63 double d1 = (double) ((float) i + random.nextFloat()); 64 double d2 = (double) ((float) j + random.nextFloat()); 65 double d3 = (double) ((float) k + random.nextFloat()); 66 67 if (l == 0 && !world.p(i, j + 1, k)) { 68 d2 = (double) (j + 1) + d0; 69 } 70 71 if (l == 1 && !world.p(i, j - 1, k)) { 72 d2 = (double) (j + 0) - d0; 73 } 74 75 if (l == 2 && !world.p(i, j, k + 1)) { 76 d3 = (double) (k + 1) + d0; 77 } 78 79 if (l == 3 && !world.p(i, j, k - 1)) { 80 d3 = (double) (k + 0) - d0; 81 } 82 83 if (l == 4 && !world.p(i + 1, j, k)) { 84 d1 = (double) (i + 1) + d0; 85 } 86 87 if (l == 5 && !world.p(i - 1, j, k)) { 88 d1 = (double) (i + 0) - d0; 89 } 90 91 if (d1 < (double) i || d1 > (double) (i + 1) || d2 < 0.0D || d2 > (double) (j + 1) || d3 < (double) k || d3 > (double) (k + 1)) { 92 world.a("reddust", d1, d2, d3, 0.0D, 0.0D, 0.0D); 93 } 94 } 95 } 96}