* Apply expected healing bonus to spell 53601.
* Allow stacking spell 62600 and 22842 effects at caster.
* Update charges for absorb shield with charges and preopertly expire it at last charge.
This fix spell 62600 effect remove at next damage.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* Support mutiply beacon buffs at same target (as will be in 3.2.x) in triggering part.
* Bonus heal caster expected original paladin, and used his heal bonuses, LoS not required for bonus heal.
* Fixed bug with not apply not-caster affected area spell (hostile area spell or talent 53563)
to another caster with same area aura active. Correctly remove only specific caster area aura at expire.
* Not show area spell icon for telent 53563 at beacon for this aura.
* Allow stacking dummy auras from diff casters, check formal aura types for effect at add aura stacking check.
Last important for area auars that can have SPELL_AURA_NONE in modifier data instead formal effect auars at caster.
* Move precast spell and add one more to Aura boosts for proper remove at cancel.
* Check in ispositivespell as positive to allow cancel in client.
(cherry picked from commit 6566ec2bbd3654921446b6522e9800ef835ffffe)
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
all warnings from Wunused
and some from Wall
cause unused may be most interesting for some:
they were in following files:
src/game/Level2.cpp
src/game/Map.cpp
src/game/SpellAuras.cpp
src/game/Unit.cpp
src/mangosd/Master.cpp
but i guess mostly someone just fogot to remove this code
for some unsigned vs signed warnings i used:
ack "for.*int .*size\(\)" | ack -v uint
also note for coding:
if you do something like
if( a && b || c)
just place parentheses around (a && b) && always will have
precedence over || but without parentheses this could be overseen
quite fast (at least that's my guess why gcc will warn for this)
Signed-off-by: balrok <der-coole-carl@gmx.net>
(cherry picked from commit 7efab7fd38c3a753e967648ca8ef1f2cdfbac76c)
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
With some fixes and rewrites.
This is solve problems with talents/glyphs/etc that affect of some talent/passive ability bonus in case:
affected talent/ability spell aura already applied before spellmod apply and not affecte as must until relearn/reload.
Example: talent 14983 and later applied glyph 42971.
Also drop dead code for removed in 3.x talent 12303.
* Drop learning form passives at form psell learning, and cast it explictly from code in all cases.
* Drop cast form passives at learning.
* Note: talents that have dependent form time passives still work in original way: learned and casted at learn if need.
* Drop hack for spell 24907 casting at form apply: it casted fines as result normal triggered effect in related form spell.
Original patch provided by nos4r2zod.
* Make spell 40216 and 42016 casted/remove at aura 40214 apply/remove.
And drop related spell_area possible existed data.
* In general restore apply area limitations to spell casting in GM mode.
* Use counter for aura uses lock for recursivly mark as used in some cases.
* At aura remove add aura to deleting delayed auras list for aura target.
* Remove now unneeded hacks from aura handlers and aura tick code (maybe not all found yet)
* Use new aura delete locking for simplify proc spell event code.
* Prevent apply aura boost spells if aura deleted while adding to target by triggered spells.
* Re-implement aura list updating at auras update for target to better way skip
removed from aura list auras while auras update.
This provided more clear place where dependent auras can be applied/removed,
if expected manual apply _with_ aura remove at parent aura expire.
This can be used for more cases.
In current state it implement additional effects for
29836 and ranks, 61846 and ranks, 31869, 53379 and ranks, 20254 and ranks,
20138 an ranks, 48263, and 48265.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>