mangosR2/mangos — Issue #666: problem at Player::AddSpellMod
Author: tibbi
Created: 2012-01-16 16:21:20+00:00
State: open

If you use a spell that has aura HandleAddModifier, some attributes of your spells visually get stuck untill you relog. What I mean is, that for example if you are a shaman, and use Clearcasting 16246, the cost of affected spells decreases correctly from like 1000 to 600. But as your clearcasting fades, either by time, or consuming all charges. the manacost visually still stays at 600, even tho it costs correctly 1000.
Another example is Lock and Load http://www.wowhead.com/spell=56453 , thats making your explosive shots trigger no cooldown (in normal case it has 6 secd cd). But, even if the buff fades and you scroll over Explosive Shot, it says that it costs no mana, and triggers no cooldown. It also always looks like ready, even if it has cooldown correctly.
Ive done some research, and the problem is at Player::AddSpellMod https://github.com/mangosR2/mangos/blob/master/src/game/Player.cpp#L19554 . Exactly at the line
"if (aura->GetAuraSpellClassMask().test(eff))".
While at applying clearcasting, or whatever buff, this line returns true, at unapplying it returns false, and so the code doesnt go further. I have also tested the official mangos version of it, at https://github.com/mangos/mangos/blob/master/src/game/Player.cpp#L18513 , but it acts totally the same. Tested on r2 too, same thing.