--- ../src-base/minecraft/net/minecraft/world/Explosion.java
+++ ../src-work/minecraft/net/minecraft/world/Explosion.java
@@ -40,6 +40,7 @@
     private final List field_77281_g;
     private final Map field_77288_k;
     private static final String __OBFID = "CL_00000134";
+    private final Vec3 position;
 
     @SideOnly(Side.CLIENT)
     public Explosion(World p_i45752_1_, Entity p_i45752_2_, double p_i45752_3_, double p_i45752_5_, double p_i45752_7_, float p_i45752_9_, List p_i45752_10_)
@@ -67,6 +68,7 @@
         this.field_77282_d = p_i45754_7_;
         this.field_77286_a = p_i45754_10_;
         this.field_82755_b = p_i45754_11_;
+        this.position = new Vec3(field_77284_b, field_77285_c, field_77282_d);
     }
 
     public void func_77278_a()
@@ -103,7 +105,7 @@
 
                             if (iblockstate.func_177230_c().func_149688_o() != Material.field_151579_a)
                             {
-                                float f2 = this.field_77283_e != null ? this.field_77283_e.func_180428_a(this, this.field_77287_j, blockpos, iblockstate) : iblockstate.func_177230_c().func_149638_a((Entity)null);
+                                float f2 = this.field_77283_e != null ? this.field_77283_e.func_180428_a(this, this.field_77287_j, blockpos, iblockstate) : iblockstate.func_177230_c().getExplosionResistance(field_77287_j, blockpos, (Entity)null, this);
                                 f -= (f2 + 0.3F) * 0.3F;
                             }
 
@@ -223,8 +225,7 @@
                         block.func_180653_a(this.field_77287_j, blockpos, this.field_77287_j.func_180495_p(blockpos), 1.0F / this.field_77280_f, 0);
                     }
 
-                    this.field_77287_j.func_180501_a(blockpos, Blocks.field_150350_a.func_176223_P(), 3);
-                    block.func_180652_a(this.field_77287_j, blockpos, this);
+                    block.onBlockExploded(this.field_77287_j, blockpos, this);
                 }
             }
         }
@@ -264,4 +265,6 @@
     {
         return this.field_77281_g;
     }
+
+    public Vec3 getPosition(){ return this.position; }
 }
