Also drop outdated support code for 61216 and ranks.
This implement work talents 61216 and 48978 with ranks.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>
* Provide more explicit way about spell that cast taxi flight if any
* Remove incorrect states instead error reporting in case non-taximaster flight start (cast/script)
* Remove mount_id arg from ActivateTaxiPathTo and implement support for 0 mount_id case (spell 32474)
* Implement spell 32474 (except finilize part)
* Provided Player::ActivateTaxiPathTo(uint32 taxi_path_id) function version for simplify one node to node paths use by id.
Implement SPELL_AURA_PERIODIC_HEALTH_FUNNEL
Apply SPELL_AURA_PERIODIC_HEALTH_FUNNEL mod to aura periodic time
Add support SPELL_ATTR_EX5_START_PERIODIC_AT_APPLY flag
Apply duration mod to channeling spells
Fix mage 44401 and correct drop its charge
Signed-off-by: DiSlord <dislord@nomail.com>
Coorrect update Talent Points on levelup / leveldown
Unlearn other ranks of learned talent
Fix typo in Pet::HasSpell (wrong result for removed spell)
Allow .reset talents reset pet talent
Implement SPELL_AURA_MOD_PET_TALENT_POINTS aura (hunter talent)
Only reset pet talent from trainer unlearn.
Signed-off-by: DiSlord <dislord@nomail.com>
Allow stack some auras from some caster in one
Move apply/remove aura state on apply/remove aura (on 1 add / on last remove)
Correctly fill aura flag and send duration update to client
Not use m_procCharges for store satack amount, used m_stackAmount
Fixes in HandlePeriodicDamage (use m_stackAmount, fix formulas to 303, optimisation)
Fixes in Spell::EffectSchoolDMG (use m_stackAmount, fix formulas to 303)
Remove unused uint32 m_PeriodicEventId from aura struct
Add Unit::RemoveSingleSpellAurasFromStack for remove one Spell auras from stack
Add Aura::RefreshAura() for refresh aura duration
Signed-off-by: DiSlord <dislord@nomail.com>
Move to protected: need use SetAuraCharges, GetAuraCharges, DropAuraCharge
Now m_procCharges == 0 if infinite charges, and > 0 for limit
Remove not need UpdateAuraCharges()
Signed-off-by: DiSlord <dislord@nomail.com>
* Implement 256 SPELL_AURA_NO_REAGENT_USE aura
* Move no reagent check to Player::CanNoReagentCast
* Add some func for get/check SpellClassMask (used in some new aura/effect)
Signed-off-by: DiSlord <dislord@nomail.com>
* Add support > 64 bit spellFamily mask
* Remove not used fields in SpellModifier
* Remove not used (and not correct work vs charges) GetTotalFlatMods, GetTotalPctMods
* Use DBC based data for spell_affect
* More better work SPELL_AURA_ADD_TARGET_TRIGGER aura
Signed-off-by: DiSlord <dislord@nomail.com>
Including fix _SCallback for 3 params, triggred mode correct call for .cast back and .cast target.
Remove outdated code for support old 19421 (and ranks) implementation in client data.