Commit Graph

749 Commits

Author SHA1 Message Date
Wyrserth
f31d8f7ffb Script/Acherus: script out of combat event for Frost Death Knight trainer Amal'thazad.
(cherry picked from commit 8fcc82138f)
2021-12-14 21:11:10 +01:00
ForesterDev
27886c7f5d Core/Player: add helper methods GetNativeGender/SetNativeGender/SetGender (#23520)
* 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 b47bb59e2a)
2021-12-13 00:42:20 +01:00
ccrs
4e6c59dca7 Core/Unit: rename several getters to follow codestyle
uint8 GetLevel()
        uint8 GetLevelForTarget(WorldObject const* /*target*/)
        void SetLevel(uint8 lvl)
        uint8 GetRace()
        uint32 GetRaceMask()
        uint8 GetClass()
        uint32 GetClassMask()
        uint8 GetGender()

(cherry picked from commit 5c09ff51f7)
2021-12-13 00:42:20 +01:00
Wyrserth
04b02f3672 Core/Spell: Challenge Flag should only hit one target.
(cherry picked from commit 39aa91f982)
2021-12-13 00:42:19 +01:00
Killyana
2aca19a079 DB/Quest: "Where Kings Walk" and "Warchief's Blessing"
The script was deleted by 5f928f7949 But it wasn't done properly via the spell_area anyway

(cherry picked from commit 8d6295559d)
2021-12-11 21:34:48 +01:00
Nitair
f6048aca9a Scripts/Stratholme: Baron Rivendare rewrite (#22572)
* 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 ee5101fbf7)
2021-12-09 00:24:26 +01:00
Killyana
c287485a7b Spell/Scripts: Add cooldown for Arcano-Scorp spells
Closes #23287

(cherry picked from commit a0d41c314f)
2021-12-05 22:37:31 +01:00
Wyrserth
fd030069f7 Core/Spell: add proper cooldowns to some spells used by vehicles (#23260)
* 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 4d04344b41)
2021-12-05 18:44:59 +01:00
Killyana
bdb728a165 Spell/Script: Throw Torch must hit only one target
(cherry picked from commit ce562415ed)
2021-12-04 00:31:32 +01:00
jackpoz
43a41caafb Core/Misc: Fix GCC 8 warnings
(cherry picked from commit 1d04a3b216)
2021-11-24 23:40:15 +01:00
Killyana
48c8b650bb Spell/Script: Summon Scourged Captive
Closes #16357

(cherry picked from commit 0959f3071a)
2021-11-24 20:35:18 +01:00
Keader
cfd0e18b81 Core/Misc: Fixed shaman elementals and magister terrace first boss access
(cherry picked from commit 6545cd33b9)
2021-11-23 00:39:59 +01:00
Ovah
3847d7b277 Scripts/Magister Terrace: Felblood Kaelthas rewrite
Cherrypick of ae440400aa

(cherry picked from commit 00958c9178)
2021-11-23 00:21:42 +01:00
Shauren
ce794f3978 Core/Spells: Fixed ErrorCube spell missiles
(cherry picked from commit 3b5014fdae)
2021-11-18 01:10:19 +01:00
Meji
a832435b97 Core/Spells: Implemented SummonPropertiesFlags: UseSummonerFaction & IgnoreSummonerPhase (#27273) 2021-11-16 11:51:05 +01:00
Shauren
ba4fa060d7 Core/Auras: Implemented SPELL_AURA_ADD_PCT_MODIFIER_BY_SPELL_LABEL and SPELL_AURA_ADD_FLAT_MODIFIER_BY_SPELL_LABEL 2021-10-16 22:05:02 +02:00
Shauren
95e2185094 Core/Spells: Fixed loading spell labels 2021-10-16 16:42:49 +02:00
Shauren
49eb3cf8fe Core/Spells: Implemented SPELL_EFFECT_TELEPORT_WITH_SPELL_VISUAL_KIT_LOADING_SCREEN 2021-10-13 11:49:30 +02:00
Shauren
8492c273dd Core/Spells: Implemented SpellReagentsCurrency.db2 2021-10-10 19:12:17 +02:00
Shauren
8147a42aef Core/Spells: Corrected spell visual fallback logic for spell difficulty entries 2021-10-10 19:02:52 +02:00
ariel-
3ea88f814a Core/Spells: all bleed effects should ignore armor
Closes #21759

(cherry picked from commit 5dec0e491b)
2021-09-23 23:37:11 +02:00
Gooyeth
2bea816bbe Core/Auras: Don't save liquid auras
(cherry picked from commit 8001c5ead1)
2021-09-23 23:23:06 +02:00
ariel-
50c5284602 Core/Spells: autogenerate miss proc for spells with auras with hit chance -100
Closes #21629

(cherry picked from commit 1c8d9af084)
2021-09-06 21:33:56 +02:00
ariel-
9fa95b4b57 Core/Spells: Fix periodic rolling adding bonuses twice
Calculation is now done in CalculateAmount

(cherry picked from commit 93eda20d5c)
2021-09-04 22:52:31 +02:00
Shauren
8a4e1119ac Core/Spells: Unify spell effect access api in both branches 2021-09-04 15:13:15 +02:00
ariel-
65dca120d3 Core/Spells: rework part 4: iterate over effects first
Ref #18395

Implement far spell queue processing
Closes #7395

(cherry picked from commit 080d2c6cd4)
2021-08-28 15:59:11 +02:00
ariel-
1e1415a491 Core/Spells: rework part 1: Improved positive detection logic
(cherry picked from commit efeae33495)
2021-08-28 15:59:11 +02:00
ariel-
0ae1ebedfe Core/Spells: explicitly disable non proccing auras when generating default procs
Closes #21529

(cherry picked from commit ad796318e8)
2021-08-18 23:22:46 +02:00
ariel-
6c642f33b5 Core/Auras: added sanity checks for area auras having a different owner unit than caster
Closes #21517

(cherry picked from commit 54e8418886)
2021-08-18 22:57:52 +02:00
Traesh
fb6761c273 Core/Spells Implement targets 133, 134, 135 : TARGET_UNIT_LINE_CASTER_TO_DEST_*** (#26786) 2021-08-15 11:09:46 +02:00
ariel-
3582bacc4a Core/Spells: add log on load about improper use of attribute PROC_ATTR_REQ_SPELLMOD
(cherry picked from commit dfa861593e)
2021-06-19 23:34:15 +02:00
ariel-
13be704cb4 Core/Spells: implement SPELLVALUE_CRIT_CHANCE
(cherry picked from commit 546a605bd0)
2021-06-19 23:33:44 +02:00
ariel-
85e5509e91 Core/Spells: calculate crit chance only for spells that do damage/healing
Refs #18813

(cherry picked from commit 52873a7072)
2021-06-19 23:33:38 +02:00
ariel-
91fa279bdf Core/Spells: require phasemask set for periodic damage procflag
Closes #21379

(cherry picked from commit b42ade918a)
2021-06-19 23:33:38 +02:00
Killyana
854abdbfb6 Spell/Script: Torch 52953 and 58121 must hit only one target
(cherry picked from commit 8f71307e56)
2021-06-19 01:35:41 +02:00
ariel-
d0f4310c44 Core/Entities: don't allow client control if player is still affected by any lose of control state
(cherry picked from commit e315e41d36)
2021-06-16 21:26:57 +02:00
ariel-
fccf1a8c62 Core/Auras: removed caster dependency from core
- 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 cb9e72e521)
2021-06-13 00:59:13 +02:00
Shauren
e1f3f1254c Core/Spells: Load spell label data for future use 2021-06-04 21:18:29 +02:00
xinef1
1912999b9e Core/Spells: Defined and implemented some new spell attributes (#18950)
(cherry picked from commit 23823f5147)
2021-05-16 21:56:07 +02:00
Matan Shukry
3b578fc6b9 Core/Chat: Load chat language data from db2 and implement serverside chat translations 2021-05-03 23:53:24 +02:00
Treeston
9b141207d1 [3.3.5] CastSpell unclusterfucking (that's a word now) (#21123)
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 d507a7e338)
2021-04-16 15:22:42 +02:00
ariel-
16ec008290 Core/Spells: fix some DB errors
Ref #18542

- Implemented Choking Vines transformation at 5 stacks
- Implemented periodic Aura of Fear ticks
- Fixed Savage Rend passive proccing on anything (raptor pets)

(cherry picked from commit de9f904269)
(cherry picked from commit 32e2207ab9)
(cherry picked from commit 9934a43e09)
2021-04-15 05:53:27 +02:00
Shauren
07a47947e2 Core/Spells: Defined and implemented new spell interrupt flags 2021-03-24 23:36:53 +01:00
Shauren
9b5a46ca2b Core/Auras: Defined and implemented many new interrupt flags 2021-03-21 12:05:32 +01:00
Shauren
c7d1cf7457 Core/Spells: Fixed startup crash and log any future attempts to apply data corrections to nonexisting spell effects 2021-03-16 00:07:34 +01:00
Matan Shukry
0c73895826 Scripts/Spells: corrections to Death Knight spell Blood Mastery (#26082) 2021-03-15 22:53:30 +01:00
jackpoz
2364aa59d8 Core/Spells: Fixed Naxx Anub Scarab Summoning Spell
Reduce spell radius of 28864 and 29105 from 100 yards to 10 yards to spawn scarabs closer

(cherry picked from commit 72e97d330b)
2021-03-15 20:17:31 +01:00
ariel-
44c8ccadd7 Core/Auras: periodics refactor part 5: ported periodic trigger spell auras to scripts
(cherry picked from commit a36e804ae4)
2021-03-15 20:17:31 +01:00
ariel-
5f9e0d92d5 Core/Auras: periodics refactor part 1:
- Don't skip ticks if diff is greater than amplitude
- Fixed spells without ampltude in DBC

(cherry picked from commit 5d91beb1db)
2021-03-15 20:17:31 +01:00
Shauren
da77b300f4 Core/Spells: Small refactor to ServersideSpellName to make private parts actually private 2021-03-14 14:45:01 +01:00