public void addBlockHitEffects(int par1, int par2, int par3, int par4)
    {
        int var5 = this.worldObj.getBlockId(par1, par2, par3);

        if (var5 != 0)
        {
            Block var6 = Block.blocksList[var5];
            float var7 = 0.1F;
            double var8 = (double)par1 + this.rand.nextDouble() * (var6.maxX - var6.minX - (double)(var7 * 2.0F)) + (double)var7 + var6.minX;
            double var10 = (double)par2 + this.rand.nextDouble() * (var6.maxY - var6.minY - (double)(var7 * 2.0F)) + (double)var7 + var6.minY;
            double var12 = (double)par3 + this.rand.nextDouble() * (var6.maxZ - var6.minZ - (double)(var7 * 2.0F)) + (double)var7 + var6.minZ;

            if (par4 == 0)
            {
                var10 = (double)par2 + var6.minY - (double)var7;
            }

            if (par4 == 1)
            {
                var10 = (double)par2 + var6.maxY + (double)var7;
            }

            if (par4 == 2)
            {
                var12 = (double)par3 + var6.minZ - (double)var7;
            }

            if (par4 == 3)
            {
                var12 = (double)par3 + var6.maxZ + (double)var7;
            }

            if (par4 == 4)
            {
                var8 = (double)par1 + var6.minX - (double)var7;
            }

            if (par4 == 5)
            {
                var8 = (double)par1 + var6.maxX + (double)var7;
            }

            this.addEffect((new EntityDiggingFX(this.worldObj, var8, var10, var12, 0.0D, 0.0D, 0.0D, var6, par4, this.worldObj.getBlockMetadata(par1, par2, par3))).func_4041_a(par1, par2, par3).multiplyVelocity(0.2F).func_405_d(0.6F), var6);
        }
    }