Commit Graph

440 Commits

Author SHA1 Message Date
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 5c5bcba65a Script/ZulGurub: rewrite High Priest Thekal's encounter script (#23429)
(cherry picked from commit 365e2f191e)
2021-12-13 00:42:18 +01:00
Aokromes 30cec73c61 Coding standards (#23514)
* Coding standards

* revert part

(cherry picked from commit fe744977c9)
2021-12-13 00:42:17 +01:00
Shauren 759d2fdd86 Core/Spells: Initialize EffectIndex of empty effects to their proper values instead of always being 0
Closes #27261
2021-12-04 23:20:55 +01:00
Trond B. Krokli b6dc6fd742 Core/Spells: make Four Horsemen debuffs negative (#23253)
By Riztazz
Closes #23248

(cherry picked from commit 1e97dfec53)
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
Keader 33a2d627dd Core/Spell: Fixed some negative spells showing as positive
Closes #22840
Revert 9ecce33192 and 7611242530
Update #22757

(cherry picked from commit a0de602d38)
2021-11-18 22:48:34 +01:00
Keader 748e8463c7 Core/Spells: Malleable Goo need be negative
Closes #22757

(cherry picked from commit 9ecce33192)
2021-11-18 22:41:57 +01:00
Aokromes c84d9f5aa9 Core/Spells: Hallowed Wand - Bat custome must be positive
closes #22684

(cherry picked from commit d6d2c4efb9)
2021-11-15 14:41:50 +01:00
Shauren d52c00a8fe Core/DataStores: Updated db2 structures to 9.1.5 2021-11-01 22:17:12 +01:00
HelloKitty c10ea61491 Core/Spells: Include RealPointsPerLevel when determining if aura is negative (#22427)
(cherry picked from commit 0d1eed5dab)
2021-10-31 01:39:10 +02:00
Keader bb599a9521 Scripts/Ulduar: Algalon the Observer fixes (#22320)
(cherry picked from commit ca7ee982db)
2021-10-23 21:58:25 +02: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
Gildor af26380d9b Core/Spells: Shadow of Death & Spiritual Vengeance should be negative spells (BlackTemple/Teron Gorefiend) (#22164)
Closes: #22160
Closes: #22161
(cherry picked from commit e114939071)
2021-10-14 19:16:52 +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
Андрей 4c6e89942f Core/Spells: Make some spells negative (#21696)
Closes #21634

(cherry picked from commit 5fa783bd34)
2021-09-28 20:58:14 +02:00
Shauren 0b882b2fa4 Core/Spells: Update effect value calculations 2021-09-18 15:00:43 +02:00
Shauren f57cf66dac Core/Spells: Typo fix 2021-09-07 11:38:24 +02:00
ariel- 46537c6bcb Core/Spells: tweak 'neutral' spell positivity
- Fixes Mind Control dummy self aura appearing as a debuff

(cherry picked from commit d46f36f773)
2021-09-05 15:16:05 +02:00
Shauren 8a4e1119ac Core/Spells: Unify spell effect access api in both branches 2021-09-04 15:13:15 +02:00
ariel- 962f6d7988 Core/Spells: rework part 5: GameObject casting
Closes #21330
Closes #18885
Ref #18752

(cherry picked from commit 45c5e1b9d6)
2021-08-28 15:59:11 +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- 52ae3c89d1 Core/Spells: rework part 2: Split up target selection logic
Target check only determines what kind of entities we can target, spell positivity determines if that entity is valid for attack/assist

Closes #8844

(cherry picked from commit 9b38a6352c)
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
Traesh fb6761c273 Core/Spells Implement targets 133, 134, 135 : TARGET_UNIT_LINE_CASTER_TO_DEST_*** (#26786) 2021-08-15 11:09:46 +02:00
Shauren ce1046a8fd Core/DataStores: 9.1.0 db2 structures 2021-08-08 00:18:10 +02:00
Shauren e1f3f1254c Core/Spells: Load spell label data for future use 2021-06-04 21:18:29 +02:00
Treeston 34c7810fe5 Core: Combat/threat system rewrite (PR #19930)
- PvE combat is now always mutual. UNIT_FLAG_IN_COMBAT is backed by actual references to the units we're in combat with.
- PvP combat is now also tracked, and almost always mutual; spells like Vanish and Feign Death can break this rule. That means we can easily determine a list of players we're fighting.
- By extension, IsInCombatWith now has sensible behavior when invoked on nonplayers.
- Threat and combat systems are no longer the same.
  - They still have an enforced relationship (threat implies combat - clearing combat clears threat)...
  - ...but we can have combat without threat. A creature (with threat list) isn't considered to be engaged until it has an entry on its threat list...
  - ...which means we can now faithfully replicate retail engage behavior. Combat on projectile launch - engagement start on projectile impact. Yay for progress!
- AI method refactor, as already ported in 6113b9d - `JustEngagedWith`, `JustEnteredCombat` and `JustExitedCombat`.
- Vehicle threat is now properly pooled on the main vehicle body (fixes #16542).
- Various edge case bug fixes for threat redirects (Misdirection "cancelling" Vigilance and similar).
- Target re-selection is now significantly faster.
- Fixed a ton of other smaller edge case bugs, probably.

Closes #7951 and #19998.

(cherry picked from commit 532ab1c7f8)
2021-05-16 21:56:01 +02:00
Shauren a9fa007f83 Core/Auras: FIxed paladin aura stacking
Closes #26125
2021-04-12 12:24:52 +02:00
Shauren 34a8baba85 Core/DataStores: Updated db2 structures to 9.0.5 2021-04-09 23:48:59 +02:00
Shauren 3f47939969 Core/Auras: Corrected logic used to determine if a spellmod should affect another spell, empty family name or class mask should not apply to any spell 2021-03-27 00:25:50 +01: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 6db27c58b9 Core/Spells: Updated spell shapeshift form flags enum 2021-03-19 23:48:33 +01:00
Shauren 69e0b9a985 Core/Auras: Update AuraState enum and implement missing new ones 2021-03-16 20:48:42 +01:00
Shauren 6585666e6e Core/Spells: Define all spell modifier types and implement ProcCooldown mod and PeriodicHealingAndDamage for melee periodic damage 2021-03-15 21:03:06 +01:00
ariel- 794a3e4388 Core/Auras: fixed off by one error in counting SPELL_ATTR5_START_PERIODIC_AT_APPLY ticks
- Made SpellInfo::GetMaxTicks and AuraEffect::GetTotalTicks return the same number without mods (dumped arbitrary default return value of 6 and arbitrary 30 sec limit)
- They should be streamlined whenever SPELL_AURA_48 is implemented

(cherry picked from commit 7dff0e3246)
2021-03-15 20:17:31 +01:00
Shauren 2bd70b41eb Core/Spells: Restore serverside spells fuinctionality 2021-03-12 21:59:10 +01:00
Shauren ea63cd882c Core/Spells: Moved power cost RequiredAuraSpellID condition checking to make sure all overloads of SpellInfo::CalcPowerCost take it into account 2021-03-04 22:46:44 +01:00
Shauren a05fc3ded5 Core/Spells: Updated spell effect type definitions to match latest client version 2021-03-04 20:30:50 +01:00
Shauren 0e3666bfbc Core/Spells: Fixed calculation spell optional power cost when any modifiers are applied 2021-03-02 23:14:50 +01:00
Shauren 624881bef5 Core/Spells: Refactor Player::ApplySpellMod to take SpellInfo argument instead of just spell id 2021-03-02 21:32:48 +01:00
Shauren ad479e8fa0 Core/Spells: Implemented spell effect 202 SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS 2021-02-28 22:08:58 +01:00
Shauren 01a3be276f Core/Spells: Prevent spell power costs from changing their sign (positive cost cannot become negative) 2021-02-21 23:19:18 +01:00
Matan Shukry a76c08843f Core/Auras: implement mana cost modification aura (#26085) 2021-02-21 23:08:51 +01:00
Shauren 331b9ccd6a Core/Entities: Regenerated updatefields code with latest generator fixes 2021-02-15 00:19:35 +01:00
Matan Shukry b4bdc4eea6 Core/Players: - Fixed auto learning class abilities that are rewarded from quests if starting Exile's Reach in case player chose not to start there (#26036) 2021-02-09 23:06:45 +01:00
Matan Shukry b832ed2479 Core/Auras: Implement spell effect attribute NoScaleWithStack (0x40) (#26029) 2021-02-05 19:05:06 +01:00
Matan Shukry e601c6d1f9 Core/Spells: Implemented summoning a personal gameobject effect (#25917) 2021-01-23 16:44:47 +01:00