private void ModifyCrit(Player player, Item item, NPC target, ref int damage, ref float knockback, ref bool crit) { if (Equipped(player)) { float multiplier = 2 + CritMultiPlayer.GetMultiplier(item); if (crit) { damage += (int)((damage / multiplier) * (1.5f - (target.life / target.lifeMax) / 2)); } if (!target.boss && (target.life / target.lifeMax) < 0.1f && (damage * multiplier * 1.5f) > target.life) { Execute(target, player.whoAmI); } } }
private void ModifyCritProj(Player player, Projectile proj, NPC target, ref int damage, ref float knockback, ref bool crit, ref int hitDirection) { if (Equipped(Main.player[proj.owner])) { float multiplier = 2 + CritMultiPlayer.GetMultiplier(proj); if (crit) { damage += (int)((damage / multiplier) * (1.5f - (target.life / target.lifeMax) / 2)); } if (!target.boss && (target.life / target.lifeMax) < 0.1f && (damage * multiplier * 1.5f) > target.life) { Execute(target, proj.owner); } } }