Example #1
0
 public boolean func_71930_b(World p_71930_1_, int p_71930_2_, int p_71930_3_, int p_71930_4_) {
   int i = 0;
   if (p_71930_1_.func_72798_a(p_71930_2_ - 1, p_71930_3_, p_71930_4_) == field_71990_ca) {
     i++;
   }
   if (p_71930_1_.func_72798_a(p_71930_2_ + 1, p_71930_3_, p_71930_4_) == field_71990_ca) {
     i++;
   }
   if (p_71930_1_.func_72798_a(p_71930_2_, p_71930_3_, p_71930_4_ - 1) == field_71990_ca) {
     i++;
   }
   if (p_71930_1_.func_72798_a(p_71930_2_, p_71930_3_, p_71930_4_ + 1) == field_71990_ca) {
     i++;
   }
   if (i > 1) {
     return false;
   }
   if (func_72291_l(p_71930_1_, p_71930_2_ - 1, p_71930_3_, p_71930_4_)) {
     return false;
   }
   if (func_72291_l(p_71930_1_, p_71930_2_ + 1, p_71930_3_, p_71930_4_)) {
     return false;
   }
   if (func_72291_l(p_71930_1_, p_71930_2_, p_71930_3_, p_71930_4_ - 1)) {
     return false;
   }
   return !func_72291_l(p_71930_1_, p_71930_2_, p_71930_3_, p_71930_4_ + 1);
 }
 public boolean func_75250_a() {
   if (field_75363_b.func_70681_au().nextInt(field_75363_b.func_70631_g_() ? 50 : 1000) != 0) {
     return false;
   }
   int i = MathHelper.func_76128_c(field_75363_b.field_70165_t);
   int j = MathHelper.func_76128_c(field_75363_b.field_70163_u);
   int k = MathHelper.func_76128_c(field_75363_b.field_70161_v);
   if (field_75364_c.func_72798_a(i, j, k) == Block.field_71962_X.field_71990_ca
       && field_75364_c.func_72805_g(i, j, k) == 1) {
     return true;
   }
   return field_75364_c.func_72798_a(i, j - 1, k) == Block.field_71980_u.field_71990_ca;
 }
Example #3
0
 private boolean func_72291_l(World p_72291_1_, int p_72291_2_, int p_72291_3_, int p_72291_4_) {
   if (p_72291_1_.func_72798_a(p_72291_2_, p_72291_3_, p_72291_4_) != field_71990_ca) {
     return false;
   }
   if (p_72291_1_.func_72798_a(p_72291_2_ - 1, p_72291_3_, p_72291_4_) == field_71990_ca) {
     return true;
   }
   if (p_72291_1_.func_72798_a(p_72291_2_ + 1, p_72291_3_, p_72291_4_) == field_71990_ca) {
     return true;
   }
   if (p_72291_1_.func_72798_a(p_72291_2_, p_72291_3_, p_72291_4_ - 1) == field_71990_ca) {
     return true;
   }
   return p_72291_1_.func_72798_a(p_72291_2_, p_72291_3_, p_72291_4_ + 1) == field_71990_ca;
 }
  private void func_72237_n(World p_72237_1_, int p_72237_2_, int p_72237_3_, int p_72237_4_) {
    if (p_72237_1_.func_72798_a(p_72237_2_, p_72237_3_, p_72237_4_) != field_71990_ca) {
      return;
    }
    if (p_72237_1_.field_72995_K) {
      return;
    }
    for (int i = 0; i < 1000; i++) {
      int j =
          (p_72237_2_ + p_72237_1_.field_73012_v.nextInt(16))
              - p_72237_1_.field_73012_v.nextInt(16);
      int k =
          (p_72237_3_ + p_72237_1_.field_73012_v.nextInt(8)) - p_72237_1_.field_73012_v.nextInt(8);
      int l =
          (p_72237_4_ + p_72237_1_.field_73012_v.nextInt(16))
              - p_72237_1_.field_73012_v.nextInt(16);
      if (p_72237_1_.func_72798_a(j, k, l) == 0) {
        p_72237_1_.func_72832_d(
            j, k, l, field_71990_ca, p_72237_1_.func_72805_g(p_72237_2_, p_72237_3_, p_72237_4_));
        p_72237_1_.func_72859_e(p_72237_2_, p_72237_3_, p_72237_4_, 0);
        char c = '\200';
        for (int i1 = 0; i1 < c; i1++) {
          double d = p_72237_1_.field_73012_v.nextDouble();
          float f = (p_72237_1_.field_73012_v.nextFloat() - 0.5F) * 0.2F;
          float f1 = (p_72237_1_.field_73012_v.nextFloat() - 0.5F) * 0.2F;
          float f2 = (p_72237_1_.field_73012_v.nextFloat() - 0.5F) * 0.2F;
          double d1 =
              (double) j
                  + (double) (p_72237_2_ - j) * d
                  + (p_72237_1_.field_73012_v.nextDouble() - 0.5D) * 1.0D
                  + 0.5D;
          double d2 =
              ((double) k
                      + (double) (p_72237_3_ - k) * d
                      + p_72237_1_.field_73012_v.nextDouble() * 1.0D)
                  - 0.5D;
          double d3 =
              (double) l
                  + (double) (p_72237_4_ - l) * d
                  + (p_72237_1_.field_73012_v.nextDouble() - 0.5D) * 1.0D
                  + 0.5D;
          p_72237_1_.func_72869_a("portal", d1, d2, d3, f, f1, f2);
        }

        return;
      }
    }
  }
 public void func_75246_d() {
   field_75365_a = Math.max(0, field_75365_a - 1);
   if (field_75365_a != 4) {
     return;
   }
   int i = MathHelper.func_76128_c(field_75363_b.field_70165_t);
   int j = MathHelper.func_76128_c(field_75363_b.field_70163_u);
   int k = MathHelper.func_76128_c(field_75363_b.field_70161_v);
   if (field_75364_c.func_72798_a(i, j, k) == Block.field_71962_X.field_71990_ca) {
     field_75364_c.func_72926_e(2001, i, j, k, Block.field_71962_X.field_71990_ca + 4096);
     field_75364_c.func_72859_e(i, j, k, 0);
     field_75363_b.func_70615_aA();
   } else if (field_75364_c.func_72798_a(i, j - 1, k) == Block.field_71980_u.field_71990_ca) {
     field_75364_c.func_72926_e(2001, i, j - 1, k, Block.field_71980_u.field_71990_ca);
     field_75364_c.func_72859_e(i, j - 1, k, Block.field_71979_v.field_71990_ca);
     field_75363_b.func_70615_aA();
   }
 }
Example #6
0
 public void func_71861_g(World p_71861_1_, int p_71861_2_, int p_71861_3_, int p_71861_4_) {
   super.func_71861_g(p_71861_1_, p_71861_2_, p_71861_3_, p_71861_4_);
   func_72290_b_(p_71861_1_, p_71861_2_, p_71861_3_, p_71861_4_);
   int i = p_71861_1_.func_72798_a(p_71861_2_, p_71861_3_, p_71861_4_ - 1);
   int j = p_71861_1_.func_72798_a(p_71861_2_, p_71861_3_, p_71861_4_ + 1);
   int k = p_71861_1_.func_72798_a(p_71861_2_ - 1, p_71861_3_, p_71861_4_);
   int l = p_71861_1_.func_72798_a(p_71861_2_ + 1, p_71861_3_, p_71861_4_);
   if (i == field_71990_ca) {
     func_72290_b_(p_71861_1_, p_71861_2_, p_71861_3_, p_71861_4_ - 1);
   }
   if (j == field_71990_ca) {
     func_72290_b_(p_71861_1_, p_71861_2_, p_71861_3_, p_71861_4_ + 1);
   }
   if (k == field_71990_ca) {
     func_72290_b_(p_71861_1_, p_71861_2_ - 1, p_71861_3_, p_71861_4_);
   }
   if (l == field_71990_ca) {
     func_72290_b_(p_71861_1_, p_71861_2_ + 1, p_71861_3_, p_71861_4_);
   }
 }
Example #7
0
 public void func_71860_a(
     World p_71860_1_, int p_71860_2_, int p_71860_3_, int p_71860_4_, EntityLiving p_71860_5_) {
   int i = p_71860_1_.func_72798_a(p_71860_2_, p_71860_3_, p_71860_4_ - 1);
   int j = p_71860_1_.func_72798_a(p_71860_2_, p_71860_3_, p_71860_4_ + 1);
   int k = p_71860_1_.func_72798_a(p_71860_2_ - 1, p_71860_3_, p_71860_4_);
   int l = p_71860_1_.func_72798_a(p_71860_2_ + 1, p_71860_3_, p_71860_4_);
   byte byte0 = 0;
   int i1 = MathHelper.func_76128_c((double) ((p_71860_5_.field_70177_z * 4F) / 360F) + 0.5D) & 3;
   if (i1 == 0) {
     byte0 = 2;
   }
   if (i1 == 1) {
     byte0 = 5;
   }
   if (i1 == 2) {
     byte0 = 3;
   }
   if (i1 == 3) {
     byte0 = 4;
   }
   if (i != field_71990_ca && j != field_71990_ca && k != field_71990_ca && l != field_71990_ca) {
     p_71860_1_.func_72921_c(p_71860_2_, p_71860_3_, p_71860_4_, byte0);
   } else {
     if ((i == field_71990_ca || j == field_71990_ca) && (byte0 == 4 || byte0 == 5)) {
       if (i == field_71990_ca) {
         p_71860_1_.func_72921_c(p_71860_2_, p_71860_3_, p_71860_4_ - 1, byte0);
       } else {
         p_71860_1_.func_72921_c(p_71860_2_, p_71860_3_, p_71860_4_ + 1, byte0);
       }
       p_71860_1_.func_72921_c(p_71860_2_, p_71860_3_, p_71860_4_, byte0);
     }
     if ((k == field_71990_ca || l == field_71990_ca) && (byte0 == 2 || byte0 == 3)) {
       if (k == field_71990_ca) {
         p_71860_1_.func_72921_c(p_71860_2_ - 1, p_71860_3_, p_71860_4_, byte0);
       } else {
         p_71860_1_.func_72921_c(p_71860_2_ + 1, p_71860_3_, p_71860_4_, byte0);
       }
       p_71860_1_.func_72921_c(p_71860_2_, p_71860_3_, p_71860_4_, byte0);
     }
   }
 }
Example #8
0
  private float func_72273_l(World p_72273_1_, int p_72273_2_, int p_72273_3_, int p_72273_4_) {
    float f = 1.0F;
    int i = p_72273_1_.func_72798_a(p_72273_2_, p_72273_3_, p_72273_4_ - 1);
    int j = p_72273_1_.func_72798_a(p_72273_2_, p_72273_3_, p_72273_4_ + 1);
    int k = p_72273_1_.func_72798_a(p_72273_2_ - 1, p_72273_3_, p_72273_4_);
    int l = p_72273_1_.func_72798_a(p_72273_2_ + 1, p_72273_3_, p_72273_4_);
    int i1 = p_72273_1_.func_72798_a(p_72273_2_ - 1, p_72273_3_, p_72273_4_ - 1);
    int j1 = p_72273_1_.func_72798_a(p_72273_2_ + 1, p_72273_3_, p_72273_4_ - 1);
    int k1 = p_72273_1_.func_72798_a(p_72273_2_ + 1, p_72273_3_, p_72273_4_ + 1);
    int l1 = p_72273_1_.func_72798_a(p_72273_2_ - 1, p_72273_3_, p_72273_4_ + 1);
    boolean flag = k == field_71990_ca || l == field_71990_ca;
    boolean flag1 = i == field_71990_ca || j == field_71990_ca;
    boolean flag2 =
        i1 == field_71990_ca
            || j1 == field_71990_ca
            || k1 == field_71990_ca
            || l1 == field_71990_ca;
    for (int i2 = p_72273_2_ - 1; i2 <= p_72273_2_ + 1; i2++) {
      for (int j2 = p_72273_4_ - 1; j2 <= p_72273_4_ + 1; j2++) {
        int k2 = p_72273_1_.func_72798_a(i2, p_72273_3_ - 1, j2);
        float f1 = 0.0F;
        if (k2 == Block.field_72050_aA.field_71990_ca) {
          f1 = 1.0F;
          if (p_72273_1_.func_72805_g(i2, p_72273_3_ - 1, j2) > 0) {
            f1 = 3F;
          }
        }
        if (i2 != p_72273_2_ || j2 != p_72273_4_) {
          f1 /= 4F;
        }
        f += f1;
      }
    }

    if (flag2 || flag && flag1) {
      f /= 2.0F;
    }
    return f;
  }
Example #9
0
 public boolean func_71903_a(
     World p_71903_1_,
     int p_71903_2_,
     int p_71903_3_,
     int p_71903_4_,
     EntityPlayer p_71903_5_,
     int p_71903_6_,
     float p_71903_7_,
     float p_71903_8_,
     float p_71903_9_) {
   Object obj = (TileEntityChest) p_71903_1_.func_72796_p(p_71903_2_, p_71903_3_, p_71903_4_);
   if (obj == null) {
     return true;
   }
   if (p_71903_1_.func_72809_s(p_71903_2_, p_71903_3_ + 1, p_71903_4_)) {
     return true;
   }
   if (func_72292_n(p_71903_1_, p_71903_2_, p_71903_3_, p_71903_4_)) {
     return true;
   }
   if (p_71903_1_.func_72798_a(p_71903_2_ - 1, p_71903_3_, p_71903_4_) == field_71990_ca
       && (p_71903_1_.func_72809_s(p_71903_2_ - 1, p_71903_3_ + 1, p_71903_4_)
           || func_72292_n(p_71903_1_, p_71903_2_ - 1, p_71903_3_, p_71903_4_))) {
     return true;
   }
   if (p_71903_1_.func_72798_a(p_71903_2_ + 1, p_71903_3_, p_71903_4_) == field_71990_ca
       && (p_71903_1_.func_72809_s(p_71903_2_ + 1, p_71903_3_ + 1, p_71903_4_)
           || func_72292_n(p_71903_1_, p_71903_2_ + 1, p_71903_3_, p_71903_4_))) {
     return true;
   }
   if (p_71903_1_.func_72798_a(p_71903_2_, p_71903_3_, p_71903_4_ - 1) == field_71990_ca
       && (p_71903_1_.func_72809_s(p_71903_2_, p_71903_3_ + 1, p_71903_4_ - 1)
           || func_72292_n(p_71903_1_, p_71903_2_, p_71903_3_, p_71903_4_ - 1))) {
     return true;
   }
   if (p_71903_1_.func_72798_a(p_71903_2_, p_71903_3_, p_71903_4_ + 1) == field_71990_ca
       && (p_71903_1_.func_72809_s(p_71903_2_, p_71903_3_ + 1, p_71903_4_ + 1)
           || func_72292_n(p_71903_1_, p_71903_2_, p_71903_3_, p_71903_4_ + 1))) {
     return true;
   }
   if (p_71903_1_.func_72798_a(p_71903_2_ - 1, p_71903_3_, p_71903_4_) == field_71990_ca) {
     obj =
         new InventoryLargeChest(
             "container.chestDouble",
             (TileEntityChest) p_71903_1_.func_72796_p(p_71903_2_ - 1, p_71903_3_, p_71903_4_),
             ((IInventory) (obj)));
   }
   if (p_71903_1_.func_72798_a(p_71903_2_ + 1, p_71903_3_, p_71903_4_) == field_71990_ca) {
     obj =
         new InventoryLargeChest(
             "container.chestDouble",
             ((IInventory) (obj)),
             (TileEntityChest) p_71903_1_.func_72796_p(p_71903_2_ + 1, p_71903_3_, p_71903_4_));
   }
   if (p_71903_1_.func_72798_a(p_71903_2_, p_71903_3_, p_71903_4_ - 1) == field_71990_ca) {
     obj =
         new InventoryLargeChest(
             "container.chestDouble",
             (TileEntityChest) p_71903_1_.func_72796_p(p_71903_2_, p_71903_3_, p_71903_4_ - 1),
             ((IInventory) (obj)));
   }
   if (p_71903_1_.func_72798_a(p_71903_2_, p_71903_3_, p_71903_4_ + 1) == field_71990_ca) {
     obj =
         new InventoryLargeChest(
             "container.chestDouble",
             ((IInventory) (obj)),
             (TileEntityChest) p_71903_1_.func_72796_p(p_71903_2_, p_71903_3_, p_71903_4_ + 1));
   }
   if (p_71903_1_.field_72995_K) {
     return true;
   } else {
     p_71903_5_.func_71007_a(((IInventory) (obj)));
     return true;
   }
 }
Example #10
0
 public void func_72290_b_(World p_72290_1_, int p_72290_2_, int p_72290_3_, int p_72290_4_) {
   if (p_72290_1_.field_72995_K) {
     return;
   }
   int i = p_72290_1_.func_72798_a(p_72290_2_, p_72290_3_, p_72290_4_ - 1);
   int j = p_72290_1_.func_72798_a(p_72290_2_, p_72290_3_, p_72290_4_ + 1);
   int k = p_72290_1_.func_72798_a(p_72290_2_ - 1, p_72290_3_, p_72290_4_);
   int l = p_72290_1_.func_72798_a(p_72290_2_ + 1, p_72290_3_, p_72290_4_);
   byte byte0 = 4;
   if (i == field_71990_ca || j == field_71990_ca) {
     int i1 =
         p_72290_1_.func_72798_a(
             p_72290_2_ - 1, p_72290_3_, i != field_71990_ca ? p_72290_4_ + 1 : p_72290_4_ - 1);
     int k1 =
         p_72290_1_.func_72798_a(
             p_72290_2_ + 1, p_72290_3_, i != field_71990_ca ? p_72290_4_ + 1 : p_72290_4_ - 1);
     byte0 = 5;
     int i2 = -1;
     if (i == field_71990_ca) {
       i2 = p_72290_1_.func_72805_g(p_72290_2_, p_72290_3_, p_72290_4_ - 1);
     } else {
       i2 = p_72290_1_.func_72805_g(p_72290_2_, p_72290_3_, p_72290_4_ + 1);
     }
     if (i2 == 4) {
       byte0 = 4;
     }
     if ((Block.field_71970_n[k] || Block.field_71970_n[i1])
         && !Block.field_71970_n[l]
         && !Block.field_71970_n[k1]) {
       byte0 = 5;
     }
     if ((Block.field_71970_n[l] || Block.field_71970_n[k1])
         && !Block.field_71970_n[k]
         && !Block.field_71970_n[i1]) {
       byte0 = 4;
     }
   } else if (k == field_71990_ca || l == field_71990_ca) {
     int j1 =
         p_72290_1_.func_72798_a(
             k != field_71990_ca ? p_72290_2_ + 1 : p_72290_2_ - 1, p_72290_3_, p_72290_4_ - 1);
     int l1 =
         p_72290_1_.func_72798_a(
             k != field_71990_ca ? p_72290_2_ + 1 : p_72290_2_ - 1, p_72290_3_, p_72290_4_ + 1);
     byte0 = 3;
     int j2 = -1;
     if (k == field_71990_ca) {
       j2 = p_72290_1_.func_72805_g(p_72290_2_ - 1, p_72290_3_, p_72290_4_);
     } else {
       j2 = p_72290_1_.func_72805_g(p_72290_2_ + 1, p_72290_3_, p_72290_4_);
     }
     if (j2 == 2) {
       byte0 = 2;
     }
     if ((Block.field_71970_n[i] || Block.field_71970_n[j1])
         && !Block.field_71970_n[j]
         && !Block.field_71970_n[l1]) {
       byte0 = 3;
     }
     if ((Block.field_71970_n[j] || Block.field_71970_n[l1])
         && !Block.field_71970_n[i]
         && !Block.field_71970_n[j1]) {
       byte0 = 2;
     }
   } else {
     byte0 = 3;
     if (Block.field_71970_n[i] && !Block.field_71970_n[j]) {
       byte0 = 3;
     }
     if (Block.field_71970_n[j] && !Block.field_71970_n[i]) {
       byte0 = 2;
     }
     if (Block.field_71970_n[k] && !Block.field_71970_n[l]) {
       byte0 = 5;
     }
     if (Block.field_71970_n[l] && !Block.field_71970_n[k]) {
       byte0 = 4;
     }
   }
   p_72290_1_.func_72921_c(p_72290_2_, p_72290_3_, p_72290_4_, byte0);
 }
Example #11
0
  public void func_77278_a() {
    float f = field_77280_f;
    HashSet hashset = new HashSet();
    for (int i = 0; i < field_77289_h; i++) {
      for (int k = 0; k < field_77289_h; k++) {
        label0:
        for (int i1 = 0; i1 < field_77289_h; i1++) {
          if (i != 0
              && i != field_77289_h - 1
              && k != 0
              && k != field_77289_h - 1
              && i1 != 0
              && i1 != field_77289_h - 1) {
            continue;
          }
          double d = ((float) i / ((float) field_77289_h - 1.0F)) * 2.0F - 1.0F;
          double d1 = ((float) k / ((float) field_77289_h - 1.0F)) * 2.0F - 1.0F;
          double d2 = ((float) i1 / ((float) field_77289_h - 1.0F)) * 2.0F - 1.0F;
          double d3 = Math.sqrt(d * d + d1 * d1 + d2 * d2);
          d /= d3;
          d1 /= d3;
          d2 /= d3;
          float f1 = field_77280_f * (0.7F + field_77287_j.field_73012_v.nextFloat() * 0.6F);
          double d5 = field_77284_b;
          double d7 = field_77285_c;
          double d9 = field_77282_d;
          float f2 = 0.3F;
          do {
            if (f1 <= 0.0F) {
              continue label0;
            }
            int k2 = MathHelper.func_76128_c(d5);
            int l2 = MathHelper.func_76128_c(d7);
            int i3 = MathHelper.func_76128_c(d9);
            int j3 = field_77287_j.func_72798_a(k2, l2, i3);
            if (j3 > 0) {
              f1 -= (Block.field_71973_m[j3].func_71904_a(field_77283_e) + 0.3F) * f2;
            }
            if (f1 > 0.0F) {
              hashset.add(new ChunkPosition(k2, l2, i3));
            }
            d5 += d * (double) f2;
            d7 += d1 * (double) f2;
            d9 += d2 * (double) f2;
            f1 -= f2 * 0.75F;
          } while (true);
        }
      }
    }

    field_77281_g.addAll(hashset);
    field_77280_f *= 2.0F;
    int j = MathHelper.func_76128_c(field_77284_b - (double) field_77280_f - 1.0D);
    int l = MathHelper.func_76128_c(field_77284_b + (double) field_77280_f + 1.0D);
    int j1 = MathHelper.func_76128_c(field_77285_c - (double) field_77280_f - 1.0D);
    int k1 = MathHelper.func_76128_c(field_77285_c + (double) field_77280_f + 1.0D);
    int l1 = MathHelper.func_76128_c(field_77282_d - (double) field_77280_f - 1.0D);
    int i2 = MathHelper.func_76128_c(field_77282_d + (double) field_77280_f + 1.0D);
    List list =
        field_77287_j.func_72839_b(
            field_77283_e, AxisAlignedBB.func_72332_a().func_72299_a(j, j1, l1, l, k1, i2));
    Vec3 vec3 = Vec3.func_72437_a().func_72345_a(field_77284_b, field_77285_c, field_77282_d);
    for (int j2 = 0; j2 < list.size(); j2++) {
      Entity entity = (Entity) list.get(j2);
      double d4 =
          entity.func_70011_f(field_77284_b, field_77285_c, field_77282_d) / (double) field_77280_f;
      if (d4 > 1.0D) {
        continue;
      }
      double d6 = entity.field_70165_t - field_77284_b;
      double d8 = (entity.field_70163_u + (double) entity.func_70047_e()) - field_77285_c;
      double d10 = entity.field_70161_v - field_77282_d;
      double d11 = MathHelper.func_76133_a(d6 * d6 + d8 * d8 + d10 * d10);
      if (d11 == 0.0D) {
        continue;
      }
      d6 /= d11;
      d8 /= d11;
      d10 /= d11;
      double d12 = field_77287_j.func_72842_a(vec3, entity.field_70121_D);
      double d13 = (1.0D - d4) * d12;
      entity.func_70097_a(
          DamageSource.field_76378_k,
          (int) (((d13 * d13 + d13) / 2D) * 8D * (double) field_77280_f + 1.0D));
      entity.field_70159_w += d6 * d13;
      entity.field_70181_x += d8 * d13;
      entity.field_70179_y += d10 * d13;
      if (entity instanceof EntityPlayer) {
        field_77288_k.put(
            (EntityPlayer) entity, Vec3.func_72437_a().func_72345_a(d6 * d13, d8 * d13, d10 * d13));
      }
    }

    field_77280_f = f;
  }
Example #12
0
 public void func_77279_a(boolean p_77279_1_) {
   field_77287_j.func_72908_a(
       field_77284_b,
       field_77285_c,
       field_77282_d,
       "random.explode",
       4F,
       (1.0F
               + (field_77287_j.field_73012_v.nextFloat()
                       - field_77287_j.field_73012_v.nextFloat())
                   * 0.2F)
           * 0.7F);
   field_77287_j.func_72869_a(
       "hugeexplosion", field_77284_b, field_77285_c, field_77282_d, 0.0D, 0.0D, 0.0D);
   Iterator iterator = field_77281_g.iterator();
   do {
     if (!iterator.hasNext()) {
       break;
     }
     ChunkPosition chunkposition = (ChunkPosition) iterator.next();
     int i = chunkposition.field_76930_a;
     int k = chunkposition.field_76928_b;
     int i1 = chunkposition.field_76929_c;
     int k1 = field_77287_j.func_72798_a(i, k, i1);
     if (p_77279_1_) {
       double d = (float) i + field_77287_j.field_73012_v.nextFloat();
       double d1 = (float) k + field_77287_j.field_73012_v.nextFloat();
       double d2 = (float) i1 + field_77287_j.field_73012_v.nextFloat();
       double d3 = d - field_77284_b;
       double d4 = d1 - field_77285_c;
       double d5 = d2 - field_77282_d;
       double d6 = MathHelper.func_76133_a(d3 * d3 + d4 * d4 + d5 * d5);
       d3 /= d6;
       d4 /= d6;
       d5 /= d6;
       double d7 = 0.5D / (d6 / (double) field_77280_f + 0.10000000000000001D);
       d7 *=
           field_77287_j.field_73012_v.nextFloat() * field_77287_j.field_73012_v.nextFloat()
               + 0.3F;
       d3 *= d7;
       d4 *= d7;
       d5 *= d7;
       field_77287_j.func_72869_a(
           "explode",
           (d + field_77284_b * 1.0D) / 2D,
           (d1 + field_77285_c * 1.0D) / 2D,
           (d2 + field_77282_d * 1.0D) / 2D,
           d3,
           d4,
           d5);
       field_77287_j.func_72869_a("smoke", d, d1, d2, d3, d4, d5);
     }
     if (k1 > 0) {
       Block.field_71973_m[k1].func_71914_a(
           field_77287_j, i, k, i1, field_77287_j.func_72805_g(i, k, i1), 0.3F, 0);
       if (field_77287_j.func_72930_a(i, k, i1, 0, 0, field_77287_j.field_72995_K)) {
         field_77287_j.func_72898_h(i, k, i1, 0);
       }
       Block.field_71973_m[k1].func_71867_k(field_77287_j, i, k, i1);
     }
   } while (true);
   if (field_77286_a) {
     Iterator iterator1 = field_77281_g.iterator();
     do {
       if (!iterator1.hasNext()) {
         break;
       }
       ChunkPosition chunkposition1 = (ChunkPosition) iterator1.next();
       int j = chunkposition1.field_76930_a;
       int l = chunkposition1.field_76928_b;
       int j1 = chunkposition1.field_76929_c;
       int l1 = field_77287_j.func_72798_a(j, l, j1);
       int i2 = field_77287_j.func_72798_a(j, l - 1, j1);
       if (l1 == 0 && Block.field_71970_n[i2] && field_77290_i.nextInt(3) == 0) {
         field_77287_j.func_72859_e(j, l, j1, Block.field_72067_ar.field_71990_ca);
       }
     } while (true);
   }
 }