solution:
instead of this
Код:
else
{
info.damage *= (1.0D + (Rnd.get() * attacker.getRandomDamage() * 2.0D - attacker.getRandomDamage()) / 100.0D);
if (dual) {
info.damage /= 2.0D;
}
if (info.crit)
{
double tempDamage = info.damage;
tempDamage *= 0.01D * attacker.calcStat(Stats.P_CRITICAL_DAMAGE, target, null);
tempDamage = 2.0D * target.calcStat(Stats.CRIT_DAMAGE_RECEPTIVE, tempDamage, attacker, null);
tempDamage += info.crit_static;
info.damage = Math.max(tempDamage, info.damage);
}
}
[1:24:19 AM] Rivelia: reverse this
[1:24:20 AM] Rivelia: to this
[1:24:24 AM] Rivelia:
Код:
else
{
info.damage *= (1.0D + (Rnd.get() * attacker.getRandomDamage() * 2.0D - attacker.getRandomDamage()) / 100.0D);
if (dual) {
info.damage /= 2.0D;
}
if (info.crit)
{
info.damage *= 0.01D * attacker.calcStat(Stats.P_CRITICAL_DAMAGE, target, null);
info.damage = (2.0D * target.calcStat(Stats.CRIT_DAMAGE_RECEPTIVE, info.damage, attacker, null));
info.crit_static = attacker.calcStat(Stats.P_CRITICAL_DAMAGE_STATIC, target, null);
info.damage += info.crit_static;
}
}
[1:24:37 AM] Rivelia: and this
[1:24:38 AM] Rivelia:
Код:
if (info.crit) {
if ((skill.isChargeBoost()) || (skill.getSkillType() == Skill.SkillType.CHARGE)) {
info.damage *= 2.0D;
} else {
info.damage = Math.max(info.damage, 2.0D * target.calcStat(Stats.CRIT_DAMAGE_RECEPTIVE, info.damage, attacker, skill));
}
}
[1:24:39 AM] Rivelia: to this
[1:24:51 AM] Rivelia:
Код:
if (info.crit) {
info.damage *= 2.0D;
}