private boolean func_70821_d(EntityPlayer p_70821_1_) { ItemStack var2 = p_70821_1_.field_71071_by.field_70460_b[3]; if (var2 != null && var2.field_77993_c == Block.field_72061_ba.field_71990_ca) { return false; } else { Vec3 var3 = p_70821_1_.func_70676_i(1.0F).func_72432_b(); Vec3 var4 = Vec3.func_72437_a() .func_72345_a( this.field_70165_t - p_70821_1_.field_70165_t, this.field_70121_D.field_72338_b + (double) (this.field_70131_O / 2.0F) - (p_70821_1_.field_70163_u + (double) p_70821_1_.func_70047_e()), this.field_70161_v - p_70821_1_.field_70161_v); double var5 = var4.func_72433_c(); var4 = var4.func_72432_b(); double var7 = var3.func_72430_b(var4); return var7 > 1.0D - 0.025D / var5 ? p_70821_1_.func_70685_l(this) : false; } }
public void func_70108_f(Entity p_70108_1_) { if (!this.field_70170_p.field_72995_K) { if (p_70108_1_ != this.field_70153_n) { if (p_70108_1_ instanceof EntityLiving && !(p_70108_1_ instanceof EntityPlayer) && !(p_70108_1_ instanceof EntityIronGolem) && this.func_94087_l() == 0 && this.field_70159_w * this.field_70159_w + this.field_70179_y * this.field_70179_y > 0.01D && this.field_70153_n == null && p_70108_1_.field_70154_o == null) { p_70108_1_.func_70078_a(this); } double var2 = p_70108_1_.field_70165_t - this.field_70165_t; double var4 = p_70108_1_.field_70161_v - this.field_70161_v; double var6 = var2 * var2 + var4 * var4; if (var6 >= 9.999999747378752E-5D) { var6 = (double) MathHelper.func_76133_a(var6); var2 /= var6; var4 /= var6; double var8 = 1.0D / var6; if (var8 > 1.0D) { var8 = 1.0D; } var2 *= var8; var4 *= var8; var2 *= 0.10000000149011612D; var4 *= 0.10000000149011612D; var2 *= (double) (1.0F - this.field_70144_Y); var4 *= (double) (1.0F - this.field_70144_Y); var2 *= 0.5D; var4 *= 0.5D; if (p_70108_1_ instanceof EntityMinecart) { double var10 = p_70108_1_.field_70165_t - this.field_70165_t; double var12 = p_70108_1_.field_70161_v - this.field_70161_v; Vec3 var14 = this.field_70170_p.func_82732_R().func_72345_a(var10, 0.0D, var12).func_72432_b(); Vec3 var15 = this.field_70170_p .func_82732_R() .func_72345_a( (double) MathHelper.func_76134_b(this.field_70177_z * 3.1415927F / 180.0F), 0.0D, (double) MathHelper.func_76126_a(this.field_70177_z * 3.1415927F / 180.0F)) .func_72432_b(); double var16 = Math.abs(var14.func_72430_b(var15)); if (var16 < 0.800000011920929D) { return; } double var18 = p_70108_1_.field_70159_w + this.field_70159_w; double var20 = p_70108_1_.field_70179_y + this.field_70179_y; if (((EntityMinecart) p_70108_1_).func_94087_l() == 2 && this.func_94087_l() != 2) { this.field_70159_w *= 0.20000000298023224D; this.field_70179_y *= 0.20000000298023224D; this.func_70024_g( p_70108_1_.field_70159_w - var2, 0.0D, p_70108_1_.field_70179_y - var4); p_70108_1_.field_70159_w *= 0.949999988079071D; p_70108_1_.field_70179_y *= 0.949999988079071D; } else if (((EntityMinecart) p_70108_1_).func_94087_l() != 2 && this.func_94087_l() == 2) { p_70108_1_.field_70159_w *= 0.20000000298023224D; p_70108_1_.field_70179_y *= 0.20000000298023224D; p_70108_1_.func_70024_g(this.field_70159_w + var2, 0.0D, this.field_70179_y + var4); this.field_70159_w *= 0.949999988079071D; this.field_70179_y *= 0.949999988079071D; } else { var18 /= 2.0D; var20 /= 2.0D; this.field_70159_w *= 0.20000000298023224D; this.field_70179_y *= 0.20000000298023224D; this.func_70024_g(var18 - var2, 0.0D, var20 - var4); p_70108_1_.field_70159_w *= 0.20000000298023224D; p_70108_1_.field_70179_y *= 0.20000000298023224D; p_70108_1_.func_70024_g(var18 + var2, 0.0D, var20 + var4); } } else { this.func_70024_g(-var2, 0.0D, -var4); p_70108_1_.func_70024_g(var2 / 4.0D, 0.0D, var4 / 4.0D); } } } } }