Commit Graph

25518 Commits

Author SHA1 Message Date
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-
95c8eae123 Core/Auras: remove too strict checks in area auras, since a few aren't owned by its caster
Closes #21528

(cherry picked from commit 2d10429a2d)
2021-08-18 23:06:33 +02:00
ariel-
b0a05812d2 Core/Auras: fixed SPELL_AURA_MOD_HIT_CHANCE honoring stack rules in all cases
Updates #21367

(cherry picked from commit 23808fe349)
2021-08-18 22:59:50 +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
Shauren
065794ed66 Core/PacketIO: Do not send hotfix Status::Valid when we don't have a hotfix blob for current locale 2021-08-17 20:02:43 +02:00
Shauren
2fe70e5fd6 Core/Misc: Fix cherry-pick errors 2021-08-16 22:24:34 +02:00
Shauren
c0261468c5 Core/Quests: Fixed quests not working after relogging
Closes #26823
2021-08-16 16:33:43 +02:00
Jeremy
38aa015196 Core/Battlegrounds: Update BattlemasterListFlags (#26819) 2021-08-15 23:41:27 +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
Traesh
4725941567 Core/AreaTrigger Update box searching to handle oriented boxes (#26772) 2021-08-14 20:08:40 +02:00
Jeremy
20d70abb2c Core/Battlegrounds: Change Battleground* argument to BattlegroundQueueTypeId (#26806) 2021-08-14 19:56:30 +02:00
Shauren
03f09ea16a Core/Items: Implemented secondary shoulder transmog appearance 2021-08-11 22:32:14 +02:00
Chaouki Dhib
30cfe3741a Core/Movement: Correct distance checking
Distance checking should always be in 3D, independently on if the mover has the ability to fly or not.

(cherry picked from commit 0fb133013c)
2021-08-08 21:21:34 +02:00
Treeston
4b93059ec7 Core/Creature: Temporarily let Creatures violate dynspawn assumptions for pooled creatures. This should fix startup crashes until I can investigate and find a long-term fix. Tag #21519.
(cherry picked from commit 9fc6b13027)
2021-08-08 21:21:34 +02:00
Treeston
8757a80767 Core/Creature: Add another aggressive compatibility mode assertion to catch faulty dynspawn code.
(cherry picked from commit 3eab2d7efc)
2021-08-08 21:21:34 +02:00
ariel-
d2878d47c9 Core/Globals: use proper type for smallint
(cherry picked from commit c9b730c767)
2021-08-08 21:21:34 +02:00
Treeston
552ce7c286 Core/VMap: Use fuzzy equality and gridmap tolerance for floor-finding. Closes #21338. Supersedes #21479.
(cherry picked from commit ec916db294)
2021-08-08 21:21:34 +02:00
Treeston
e47e95b6dc Core/VMap: Add outdoor state to Map::GetFullTerrainStatusForPosition. Add WorldObject::IsOutdoors, basic member access.
Ref #21479.

(cherry picked from commit e79c595b69)
2021-08-08 21:21:34 +02:00
Treeston
74cdf260e1 Core/Threat: Fix taunt logic relying on unspecified behavior by unordered boost heap iterators. Use ordered iterators instead, this is cheap for our use case anyway. This will make taunt behave consistently again.
Closes #21499.

(cherry picked from commit 71b5ed6832)
2021-08-08 21:21:34 +02:00
ariel-
67a1a1d29b Core/GameObject: implemented gameobject_overrides table to change faction and flags values on a per-spawn basis
Updates #20957
Closes #20958

(cherry picked from commit 34967e9c32)
2021-08-08 21:21:34 +02:00
ariel-
4c8a49302f Core/GameObject: kill uninitialized, unused field from GameObjectTemplateAddon struct
(cherry picked from commit 02739c2cbb)
2021-08-08 21:21:34 +02:00
ariel-
a1a00f823e Core/Entities: kill unused return value from Unit::HandleSpellClick
- AI hook will now receive the result by copy, as modifying it had no effect
- Some renaming: result->spellClickHandled, clickPair is actually clickBounds, the clickPair is the pair <creatureID, SpellClickInfo>

(cherry picked from commit 98d6258efd)
2021-08-08 21:21:34 +02:00
ariel-
ffa359c21c Core/Auras: check conditions against referer caster, just as spells do
Closes #21492

(cherry picked from commit 83292cd983)
2021-08-08 21:21:34 +02:00
Treeston
32997a5989 Core/SmartScripts: Rename SMART_ACTION_RESPAWN_TARGET -> SMART_ACTION_ENABLE_TEMP_GOBJ, since that's the only thing it still does in the dynspawn model. Adjust body accordingly to warn on misuse.
(cherry picked from commit 0850b5ff39)
2021-08-08 21:21:34 +02:00
Treeston
65b8dafb53 Core/GameObject: Force compatibility mode for stupid ridiculous junk legacy hack gameobjects, ref 27e7906.
(cherry picked from commit 9f92896c52)
2021-08-08 21:21:34 +02:00
Treeston
de3eb7b298 Core/GameObject: fix stupid ridiculous junk legacy hack code with negative gobj respawn time to work again
(cherry picked from commit 27e7906814)
2021-08-08 21:21:34 +02:00
ariel-
181c671924 Core/Scripts: remove hack that caused aura to not be applied and saved twice on owned auras, causing an error on save
- This is handled by group stack rules actually
- Also reset removed aura counter when cleaning removed auras

Closes #21486

(cherry picked from commit 1074a9b053)
2021-08-08 21:21:34 +02:00
Treeston
61baf6704c AI/SmartAI: New SMART_ACTION_RESPAWN_BY_SPAWNID (hi kilyana)
(cherry picked from commit 691c67f0be)
2021-08-08 21:21:34 +02:00
Treeston
5c80f50734 Core/Spawning: Actually check spawn group state before processing a respawn. It feels like that is something that should've been noticed at some point.
Also remove CreatureScript::CanSpawn since nobody uses it, and spawn groups do the same thing.

(cherry picked from commit 94b5d9bfa1)
2021-08-08 21:21:34 +02:00
ariel-
5e7a11f88d Core/Scripts: apply resilience on Vampiric Touch and Unstable Affliction dispel effect
- Spell with SPELL_ATTR4_FIXED_DAMAGE won't do it by itself to avoid applying resilience twice, but because those are triggered from a periodic aura, those apply resilience on tick, not saved to amount.
- This is one of the cases where you have to call Unit::SpellDamageBonusTaken directly

Closes #21393

(cherry picked from commit 3753ec5647)
2021-08-08 21:21:34 +02:00
ariel-
8e7a12a87a Core/Auras: restrict target map update only to area auras as player requires to have auras registered on load
Closes #21472

(cherry picked from commit 7cff1b540c)
2021-08-08 21:21:34 +02:00
ariel-
b1a76fc756 Core/Unit: clear charmed/possessed state before returning client control. Works like a charm
Closes #21471

(cherry picked from commit fc678bb3c2)
2021-08-08 21:21:34 +02:00
ariel-
489b111a8a Core/Vehicles: fix crash
- Aura could be removed in Unit::SetCharmedBy (StopMoving->Relocate->ProcessTerrainStatusUpdate->RemoveAurasWithInterruptFlags)
- By not passing AuraApplication parameter execution continued with a removed application leaving vehicle in a invalid state (m_sharedVision not empty)

Closes #18281

(cherry picked from commit eb7d22d23e)
2021-08-08 21:21:34 +02:00
ariel-
70c26d53cb Core/Entities: unit states cleanup
- Added new UNIT_STATE_FOCUSING for creature focus system, this will stop creatures adding/clearing the UNIT_STATE_CANNOT_TURN mask (eg UNIT_STATE_STUNNED if stunned while focusing a spell)
- Added UNIT_STATE_CHARMED that gets set/removed on any charm type (UNIT_STATE_POSSESSED is only for possess as it's name suggests)
- The new states are checked against mask to know whenever client needs to regain character control

Closes and fixes #21460

(cherry picked from commit ba27711145)
2021-08-08 21:21:34 +02:00
Wilcalaf
e3941e4199 Scripts/Nexus: Fixed a rare bug when sometimes Magus telestra managed to die while invisible preventing players from looting. (#21436)
(cherry picked from commit 2dd5735bd9)
2021-08-08 21:21:34 +02:00
jackpoz
89a232de3a Core/Misc: Add PERFORMANCE_PROFILING CMake option
Add a new CMake option called PERFORMANCE_PROFILING that should be used only when profiling the performance.
This option is unsupported, do not report any issue happening when enabling this option.

(cherry picked from commit db5c9867e2)
2021-08-08 21:21:34 +02:00
jackpoz
b7aef385e8 Core/Misc: ASSERT() cleanup
Move some functions calls out of ASSERT() calls. ASSERT() should only apply checks without modifying any object and without having any side effect.

(cherry picked from commit 572eab1c35)
2021-08-08 21:21:34 +02:00
sirikfoll
74101eaf7c Scripts/Icecrown Citadel: Prevent Lady Deathwhisper movement during first phase.
(cherry picked from commit 076bd11002)
2021-08-08 21:21:34 +02:00
ariel-
64399f58a3 Core/Auras: fixed Drain Mana breaking early if caster has Mana Feed talent but no active pet
(cherry picked from commit 1ac87b6c60)
2021-08-08 21:21:34 +02:00
Cannix
64234b35ed Core/Spells: Execute item casts immediately instead (#21396)
(cherry picked from commit 7e71b4535a)
2021-08-08 21:21:34 +02:00
Wyreth
8713a62328 Core/Entities: remove grid-wide visibility from setActive and implement another method for it (#20725)
(cherry picked from commit 56874b44f0)
2021-08-08 21:21:34 +02:00
jackpoz
efce8ca379 Core/Misc: Fix static analysis issues
Fix static analysis issues reported by Coverity

(cherry picked from commit d3d0640a8d)
2021-08-08 21:21:34 +02:00
Jeremy
69edf282fa Partial: Core/Entities: Reduce the probability of units dropping under the map (#21322)
Reduce the probabilty of going under the map

(cherry picked from commit 9e0faace9a)

Revert "Core/Entities: Reduce the probability of units dropping under the map (#21322)"

(cherry picked from commit 2dadbda24a)
2021-08-08 21:21:34 +02:00
Shauren
fcead0b4ea Core/Spells: Use caster as chat source in Spell::EffectSendChatMessage 2021-08-08 18:15:00 +02:00
Jeremy
58be6007fb Core/Battlegrounds: Remove duplicate info from GroupQueueInfo (#26759)
- BgTypeId
- ArenaType
- IsRated

Those are fields that are already present in the field m_queueId
2021-08-08 18:06:29 +02:00
Shauren
193233286d Core/Misc: ASSERT() cleanup - followup of cherry pick 572eab1c35 2021-08-08 15:22:55 +02:00
Shauren
9067eb22ce Core/Units: Fixed crash in Unit::CalcArmorReducedDamage when called from periodic aura tick if caster is no longer in world
Closes #26776
2021-08-08 13:03:57 +02:00
Shauren
262ee285db Core/Misc: Updated SpellCastResult, GameError and HotfixStatus enums 2021-08-08 00:18:10 +02:00
Shauren
ce1046a8fd Core/DataStores: 9.1.0 db2 structures 2021-08-08 00:18:10 +02:00
Shauren
cd5357dc18 Core/PacketIO: 9.1.0 opcodes and packet structures 2021-08-08 00:18:05 +02:00