|
@@ -1612,13 +1612,11 @@ public final class Formulas
|
|
|
return (Rnd.get(100) < rate);
|
|
|
}
|
|
|
|
|
|
- public static double calcManaDam(L2Character attacker, L2Character target, Skill skill, byte shld, boolean sps, boolean bss, boolean mcrit)
|
|
|
+ public static double calcManaDam(L2Character attacker, L2Character target, Skill skill, byte shld, boolean sps, boolean bss, boolean mcrit, double power)
|
|
|
{
|
|
|
// Formula: (SQR(M.Atk)*Power*(Target Max MP/97))/M.Def
|
|
|
double mAtk = attacker.getMAtk(target, skill);
|
|
|
double mDef = target.getMDef(attacker, skill);
|
|
|
- final boolean isPvP = attacker.isPlayable() && target.isPlayable();
|
|
|
- final boolean isPvE = attacker.isPlayable() && target.isAttackable();
|
|
|
double mp = target.getMaxMp();
|
|
|
|
|
|
switch (shld)
|
|
@@ -1633,7 +1631,7 @@ public final class Formulas
|
|
|
// Bonus Spiritshot
|
|
|
mAtk *= bss ? 4 : sps ? 2 : 1;
|
|
|
|
|
|
- double damage = (Math.sqrt(mAtk) * skill.getPower(attacker, target, isPvP, isPvE) * (mp / 97)) / mDef;
|
|
|
+ double damage = (Math.sqrt(mAtk) * power * (mp / 97)) / mDef;
|
|
|
damage *= calcGeneralTraitBonus(attacker, target, skill.getTraitType(), false);
|
|
|
|
|
|
if (target.isAttackable())
|