mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-15 12:31:31 +00:00
[Rules] Add optional rule for lifetap heals (#1689)
What: Add toggle for compounding bonuses for lifetap heals. Why: When spell damage and heal amount bonuses are scaled to ludicrous levels, this double dip results in very high heals from relatively weak lifetaps. Created new rule: Spells:CompoundLifetapHeals If true (default): Apply spell damage bonuses to lifetap damage Pass that amount through heal bonuses Heal for this resulting amount If false: Apply spell damage bonuses to lifetap damage Heal for this resulting amount
This commit is contained in:
parent
17c8e8414c
commit
acf5836253
@ -387,6 +387,7 @@ RULE_BOOL(Spells, InvisRequiresGroup, false, "Invis requires the the target to b
|
|||||||
RULE_INT(Spells, ClericInnateHealFocus, 5, "Clerics on live get a 5 pct innate heal focus")
|
RULE_INT(Spells, ClericInnateHealFocus, 5, "Clerics on live get a 5 pct innate heal focus")
|
||||||
RULE_BOOL(Spells, DOTsScaleWithSpellDmg, false, "Allow SpellDmg stat to affect DoT spells")
|
RULE_BOOL(Spells, DOTsScaleWithSpellDmg, false, "Allow SpellDmg stat to affect DoT spells")
|
||||||
RULE_BOOL(Spells, HOTsScaleWithHealAmt, false, "Allow HealAmt stat to affect HoT spells")
|
RULE_BOOL(Spells, HOTsScaleWithHealAmt, false, "Allow HealAmt stat to affect HoT spells")
|
||||||
|
RULE_BOOL(Spells, CompoundLifetapHeals, true, "True: Lifetap heals calculate damage bonuses and then heal bonuses. False: Lifetaps heal using the amount damaged to mob.")
|
||||||
RULE_CATEGORY_END()
|
RULE_CATEGORY_END()
|
||||||
|
|
||||||
RULE_CATEGORY(Combat)
|
RULE_CATEGORY(Combat)
|
||||||
|
|||||||
@ -3613,7 +3613,7 @@ void Mob::CommonDamage(Mob* attacker, int &damage, const uint16 spell_id, const
|
|||||||
if (spell_id != SPELL_UNKNOWN && IsLifetapSpell(spell_id)) {
|
if (spell_id != SPELL_UNKNOWN && IsLifetapSpell(spell_id)) {
|
||||||
int healed = damage;
|
int healed = damage;
|
||||||
|
|
||||||
healed = attacker->GetActSpellHealing(spell_id, healed);
|
healed = RuleB(Spells, CompoundLifetapHeals) ? attacker->GetActSpellHealing(spell_id, healed) : healed;
|
||||||
LogCombat("Applying lifetap heal of [{}] to [{}]", healed, attacker->GetName());
|
LogCombat("Applying lifetap heal of [{}] to [{}]", healed, attacker->GetName());
|
||||||
attacker->HealDamage(healed);
|
attacker->HealDamage(healed);
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user