mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 10:37:03 +00:00
[10998] Re-write work proc of stackable spells with charges in more simple way
Some spells have procCharges > 0 and in same time maxStack > 1. It's support has been implemented more year ago but current way work with single aura from stack remove at proc always made some spells work wrongly (7 spells (with ranks) in 3.3.5a). In fact only 3 spell (with ranks) need this "one from stack" way and all form its have similarity: Its apply max stack from start and decrease stacks at proc hit. Another prove for correctness this way: in 2.x exist single spell with charges and maxstack that expect full aura stack remove. So implemented opposition way: normal aura proc remove always full aura holder stack. Special 3 cases have overwrite code for work with stack in correct for its way. Fixed work: * items 31857 and 50259 * recipe 46027 effects. * talent 63730 and ranks Affected by code changes talents 51528 and 55166 tested and work. Spell 34026 use similar decrease stack at hit but req. independent patch for full implemention, so not work.
This commit is contained in:
parent
d6eef703ce
commit
b7f4a41fcd
9 changed files with 63 additions and 17 deletions
|
|
@ -9848,7 +9848,7 @@ void Unit::ProcDamageAndSpellFor( bool isVictim, Unit * pTarget, uint32 procFlag
|
|||
removedSpells.unique();
|
||||
// Remove auras from removedAuras
|
||||
for(RemoveSpellList::const_iterator i = removedSpells.begin(); i != removedSpells.end();++i)
|
||||
RemoveAuraHolderFromStack(*i);
|
||||
RemoveAurasDueToSpell(*i);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue