* Fix spell_area not checking for zoneID for quests
* Addendum to bdffe0a4a641414fe26c9b75b00f8e70ff0f1cb8
* Fix spell_area handle same spell with the same quests
Also fix not checking for quest_end at all.
* Addendum to 2d6b0545e3762b3a25005726d4093cf4a7945a8d
* Better commenting for 7a50189de3104f000d8b31fa6c415bb69cf1a3e7
* Addendum to 2d6b0545e3762b3a25005726d4093cf4a7945a8d
(cherry picked from commit 92d83c3c2eaba3f5b58dc98472318872f3a54706)
* Core/Player: add helper methods GetNativeGender/SetNativeGender/SetGender and fix some cases, where we should get player gender, instead of modified by display gender
* fix merge
* Add virtual methods for Unit class
(cherry picked from commit b47bb59e2a3e42aff3793517ef94f51678b54905)
* Adding last state of rivendare rewrite
* Fix aura beeing removed on reset, fix death pact
* Not needed
* SQL: Changed remove/inset into update, fixed delete at conditions part
* Typo
* Remove link spell, fix blank lines, change magic numbers to enum
* Test changes with SpellScript and DoCastSelf
* Revert SpellScript and moved DoCastSelf for the aura into UpdateAI part
* Damn, copyright.
* Fix Unholy Aura
* Fix again (does attack now / does cast if encounter resets)
* Adding handling of the aura to the db
* Rename 2018_99_99_99_world_335.sql to 2019_05_31_02_world_335.sql
(cherry picked from commit ee5101fbf74b0fa924a8467ee766b39c1d06875b)
* Core/Spell: add proper cooldowns to some spells used by vehicles, thanks to jackpoz and sirikfoll.
* Add Wing Buffet and Stampy's Stompy-Stomp.
* Add Tag Greater Felfire Diemetradon and Touch of Darkness.
* Rename 9999_99_99_99_world.sql to 2019_05_17_00_world.sql
(cherry picked from commit 4d04344b414adc965bd2760d3f30338bcce70431)
- Decoupled Unit logic: split of spell critical chance into done (caster bonuses) and taken (target bonuses), this allows to precalculate caster bonuses on aura apply and then check victim's auras on damage/healing calc
- Made static a bunch of methods (they no longer have this pointer because they are now called from periodic handlers which may or may not have an active caster in world)
- Simplified all AuraEffect bonuses into AuraEffect::_amount, no more duplicated code
- Critical chance and whether or not caster is player owned unit (for resilience calcs) is now saved one level upper, on Aura itself (it's impossible as of 3.3.5 to have different effects with different critical chances)
- Minor cleanup of SPELL_DAMAGE_CLASS_NONE and Arcane Potency (#18813) crit handling
Closes#19876
(cherry picked from commit cb9e72e521d3cc415dd15bf6912c87f89e41b92a)
Core/Spell: The giant CastSpell unclusterfucking (that's a word now) of this generation.
- CastSpell now always takes three arguments - target, spellId, and a struct containing extra arguments
- This struct (CastSpellExtraArgs, see SpellDefines.h) serves as a conglomerate of every previous combination of the 20 billion different CastSpell overloads, all merged into one
- It has some great utility constructors - check them out! All of these can be used to implicitly construct the ExtraArgs object.
- A gajillion refactors to make everything behave the way it always has
(cherry picked from commit d507a7e3388382960108b24143da48e5f912b4a7)