Fixed HealEffect bonuses.

This commit is contained in:
MobiusDevelopment 2019-06-07 10:34:22 +00:00
parent 479b69ddb2
commit 25d199e044
48 changed files with 84 additions and 48 deletions

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),

View File

@ -107,7 +107,8 @@ public final class Heal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill))
{

View File

@ -20,12 +20,12 @@ import org.l2jmobius.gameserver.model.StatsSet;
import org.l2jmobius.gameserver.model.stats.Stats;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public class HealEffect extends AbstractStatEffect
{
public HealEffect(StatsSet params)
{
super(params, Stats.HEAL_EFFECT);
super(params, Stats.HEAL_EFFECT, Stats.HEAL_EFFECT_ADD);
}
}

View File

@ -103,7 +103,8 @@ public final class HpCpHeal extends AbstractEffect
if (!skill.isStatic())
{
amount += staticShotBonus + Math.sqrt(mAtkMul * effector.getMAtk());
amount = effected.getStat().getValue(Stats.HEAL_EFFECT, amount);
amount *= effected.getStat().getValue(Stats.HEAL_EFFECT, 1);
amount += effected.getStat().getValue(Stats.HEAL_EFFECT_ADD, 0);
// Heal critic, since CT2.3 Gracia Final
if (skill.isMagic() && (Formulas.calcCrit(skill.getMagicCriticalRate(), effector, effected, skill) || effector.isAffected(EffectFlag.HPCPHEAL_CRITICAL)))
{

View File

@ -73,6 +73,7 @@ public enum Stats
ADDITIONAL_POTION_CP("addPotionCp"),
MANA_CHARGE("manaCharge"),
HEAL_EFFECT("healEffect"),
HEAL_EFFECT_ADD("healEffectAdd"),
// ATTACK & DEFENCE
PHYSICAL_DEFENCE("pDef", new PDefenseFinalizer()),