Commit Graph

1076 Commits

Author SHA1 Message Date
Shauren
7ff411013c Core/Auras: Implemented ProcFlags2 2022-02-10 12:38:31 +01:00
Shauren
8e2d1e328e Core/Spells: Pass cast item level to triggered spells
* Fixes value on trinkets like Ignition Mage's Fuse
2022-02-08 21:36:31 +01:00
Maks Szokalski
bc04acb726 Add "On" to some gossip methods in AI (#25415)
* Add "On" to some methods

* Update npc_innkeeper.cpp

* Update zone_borean_tundra.cpp

(cherry picked from commit 41188eb535)
2022-02-05 22:18:19 +01:00
Giacomo Pozzoni
c66bcc4c0e Core/Spell: Fix name clashing between local variables and class member fields (#25352)
(cherry picked from commit 8a48ece573)
2022-02-04 13:00:08 +01:00
Shauren
c65340e761 Core/Spells: Implement SPELL_EFFECT_TRIGGER_SPELL delay (stored in MiscValue) 2022-02-02 19:50:22 +01:00
Shauren
950db60435 Core/Pets: Updated pet summoning for latest client version (5 Call Pet spells and stable size 200) 2022-02-02 00:08:37 +01:00
Shauren
688d1d9533 Core/Pets: Fixed crash happening when current pet is forcibly removed while being temporarily unsummoned (like on a mount)
(cherry picked from commit d163735abd)
2022-01-31 00:24:51 +01:00
Shauren
ca92686b44 Core/Pets: Pet management refactoring (#25191)
* Core/Pets: Pet management refactoring

* Preload basic pet data on character login with async query
* Load additional pet data (declined names/auras/spells/cooldowns) using async query after we are sure pet loading will succeed
* Remove all select queries related to pet stable/unstable
* Remove all silent pet deletions except explicit UI-triggered abandons
* Fixed displaying stable master content when current pet is not summoned
* Allow to stable/swap unsummoned current pet

Closes #3610
Closes #21266

(cherry picked from commit 5c1fc5e387)
2022-01-31 00:17:21 +01:00
Carbenium
3bba8d50b1 Core/WorldObject: Remove non-std::chrono SummonCreature overload
Remove
TempSummon* SummonCreature(uint32 entry, Position const& pos, TempSummonType despawnType = TEMPSUMMON_MANUAL_DESPAWN, uint32 despawnTime = 0, uint32 vehId = 0, uint32 spellId = 0);

(cherry picked from commit a41f599be7)
2022-01-24 12:39:59 +01:00
Peter Keresztes Schmidt
44ea32ace4 Build: Enable -Wimplicit-fallthrough on clang (#25056)
* Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs

Related: #25006

* Misc: Add some missing breaks (no-ops) to satisfy clang

Related: #25006
Closes #25055

* Build: Enable -Wimplicit-fallthrough on clang

Closes #25006
2022-01-23 22:16:15 +01:00
Shauren
596bf2b772 Core/Misc: Replace boost::optional with std::optional part 2 2022-01-23 20:31:52 +01:00
Giacomo Pozzoni
e9cf3828ba Core/Spells: Implement SPELL_EFFECT_ACTIVATE_OBJECT. (#23) (#24997)
* Core/Spells: Implement SPELL_EFFECT_ACTIVATE_OBJECT. (#23)

Original research by @xvwyh.

* Add missing sql update

* Fix some build errors

* Remove unused enum values

* Change artkits from 0-4 to 0-3

* Remove unused code

* Code review feedback

* Fix sql

* Remove artkit4 special case handling

* Default initialize artKits

* Code review feedback

* Split sql into structure and data files

Co-authored-by: Warpten <vertozor@gmail.com>
(cherry picked from commit 203573db83)
2022-01-23 15:17:54 +01:00
Giacomo Pozzoni
8f4db9aa69 Core/Spells: implement corpse target type support and properly fix resurrections (#24921)
* Core/Spells: implement corpse target type support and properly fix resurrections

(cherry picked from commit df193945d9)

* Core/Spells: implement TARGET_CORPSE_SRC_AREA_RAID and updated remaining resurrection effect handlers for updated corpse targeting

(cherry picked from commit 98b075cb4b)

* Fix no-pch

Co-authored-by: Ovahlord <dreadkiller@gmx.de>
(cherry picked from commit cc71da35b5)
2022-01-20 00:13:02 +01:00
Meji
ddc71206de Core/Spells: Implemented spell effect 225 (SPELL_EFFECT_GRANT_BATTLEPET_LEVEL) (#27506) 2022-01-07 22:14:07 +01:00
jackpoz
e71352db6f Core/Spells: Fix assertion triggered
(cherry picked from commit 740afc7135)
2022-01-01 20:11:02 +01:00
Giacomo Pozzoni
a9e325f6b7 Core/Logs: Log full guid instead of just low guid, part 2
(cherry picked from commit 3def52c1c4)
2022-01-01 00:51:54 +01:00
Giacomo Pozzoni
6ec933f281 Core/Logs: Log full guid instead of just low guid
(cherry picked from commit 468ecb7252)
2021-12-31 21:56:40 +01:00
Ovah
fb7a60d49d Core/Spells: fixed a possible client crash when casting pull towards dest spells with misc value 0 (#24365)
* This case is not happening in 335 yet as it barely has any spell with pull towardst dest effects. However, this is very well present in 4.x and beyond so let's add it for future cherrypicks

(cherry picked from commit 61aec37b4f)
2021-12-31 00:55:12 +01:00
Meji
9354b4ac8e Core/Spells: Implemented battle pet experience related spell effects and auras (#27488)
* Spell effect 286 (SPELL_EFFECT_GRANT_BATTLEPET_EXPERIENCE)
* Aura type 420 (SPELL_AURA_MOD_BATTLE_PET_XP_PCT)
2021-12-30 20:38:29 +01:00
Shauren
853c58715e Core/Spells: Use orientation given in destTarget instead of always taking casters orientation for all effect types 2021-12-29 14:18:53 +01:00
Jeremy
15b9183635 Core/ZoneScript: Add "invoker" param to ProcessEvent (#24758) 2021-12-27 13:55:59 +01:00
Meji
924182f692 Core/BattlePets: Misc fixes (#27446)
* Added script for "Summon Battle Pet" spell (118301).
* Set the saved display of the battle pet when summoning it.
* If a summon has SummonPropertiesFlags::SummonFromBattlePetJournal it will remove NpcFlag UNIT_NPC_FLAG_WILD_BATTLE_PET (Wild battle pets).
* When a creature is summoned with SummonTitle::Companion, it will check to see if it has SummonPropertiesFlags::SummonFromBattlePetJournal before updating the battle pet's update fields. (If you have a summoned battle pet and summon a creature with that SummonTitle, it will incorrectly update the battle pet's update fields with the summoned battle pet's data).
* Implemented SummonPropertiesFlags::UseCreatureLevel. If a summon has this flag, it will use the owner's level (If the summon doesn't have SummonProperties it will always use the selected level).
2021-12-25 15:27:58 +01:00
NoName
cc1c67183f Core/Spell: SPELL_EFFECT_PULL_TOWARDS correction (#24251)
* SPELL_EFFECT_PULL_TOWARDS correction

* Hi Appveyor

(cherry picked from commit b88881f8ad)
2021-12-23 22:44:06 +01:00
NoName
8ec51bf3b6 Core/Spell: Proper SPELL_EFFECT_PULL_TOWARDS_DEST implementation for players (#24178)
* Core/Spell: Proper SPELL_EFFECT_PULL_TOWARDS_DEST implementation for players
Closes ##23203 and also reverts 9a1282a

thnx to xvwyh

* Make it optional

(cherry picked from commit 6067a99632)
2021-12-22 20:50:33 +01:00
Ujp8LfXBJ6wCPR
91a0fbbd71 Use boost::optional and boost::none instead of smelly pointer (#24134)
* Remove bad pointer usage from CharacterCache

Use TrinityCore Option type instead which is intended for this purpose. (Wrapper around boost::option until C++17 bump is finalised)

* Unify codestyle regarding TC optional type

Based upon advice from @Shauren

(cherry picked from commit 76831f1f46)
2021-12-21 15:21:39 +01:00
Sorikoff
6433ed6014 Scripts/Spells: Gift of the Harvester (#24111)
* Scripts/Spells: Gift of the Harvester

* Scripts/Spells: nopch

* Scripts/Spells: nopch

* Scripts/Spells: validate

* Rename 9999_99_99_99_world.sql to 2020_02_01_03_world.sql

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit e10239311c)
2021-12-21 00:48:30 +01:00
ForesterDev
9124fd1f1f Core/Items: implement some helper methods for easier readability (#24113)
(cherry picked from commit 573ddf4d22)
2021-12-21 00:46:13 +01:00
Meji
c4fee8c5cf Core/Spells: Implemented spell effect 204 (SPELL_EFFECT_CHANGE_BATTLEPET_QUALITY) (#27425) 2021-12-19 13:27:27 +01:00
Keader
24281a5323 Core/Spells: Fixed SPELL_EFFECT_DISPEL when target has 2 spells with same ID (#23710)
Ty sirikfoll for all help :)

(cherry picked from commit 95284b23d1)
2021-12-18 20:32:42 +01:00
Sorikoff
66f5275d26 Scripts/Spells: Runic Healing Injector (#23690)
* Scripts/Spells: Runic Healing Injector

* Rename 9999_99_99_99_world.sql to 2019_08_08_00_world.sql

(cherry picked from commit 382f563571)
2021-12-18 19:15:11 +01:00
Sorikoff
1fd0ba816f Scripts/Spells: Devour Humanoid (#23660)
(cherry picked from commit 0d53a0ba98)
2021-12-18 00:01:56 +01:00
Giacomo Pozzoni
92fc09b1b5 3.3.5 Don't allow to summon dead hunter pets (#23271)
* Core/Player: Add support to SMSG_PET_TAME_FAILURE

* Core/Pet: Don't summon dead pets when using "Call pet"

(cherry picked from commit a0f8ce14e9)
2021-12-17 23:56:51 +01:00
Shauren
e8b3dda4a0 Core/BattlePets: Wrap battle pet related code in a separate namespace 2021-12-17 14:23:43 +01:00
Shauren
05037bd936 Core/Auras: Implemented ChangeSpec, ChangeTalent and ChangeGlyph interrupt flags 2021-12-17 12:18:43 +01:00
Sorikoff
a947a0e85e Scripts/Spells: Brittle Armor & Mercurial Shield (#23576)
(cherry picked from commit a64d7df662)
2021-12-15 00:17:32 +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
Sorikoff
b8d675eba7 Scripts/Spells: Dimensional Ripper - Everlook (#23547)
(cherry picked from commit 5c09ff51f7)
2021-12-13 00:42:20 +01:00
Sorikoff
996b7c1f0e Scripts/Spells: Ultrasafe Transporter: Toshley's Station (#23537)
* Scripts/Spells: Ultrasafe Transporter: Toshley's Station

* Rename 9999_99_99_99_world.sql to 2019_06_29_01_world.sql

(cherry picked from commit 33b4ad5a89)
2021-12-13 00:42:18 +01:00
Sorikoff
7b08125c23 Scripts/Spells: Remove Collapsing Cave Aura (#23533)
* Scripts/Spells: Remove Collapsing Cave Aura

* Rename 9999_99_99_99_world.sql to 2019_06_29_00_world.sql

(cherry picked from commit 8d1a5fa126)
2021-12-13 00:42:18 +01:00
Sorikoff
88457030cc Scripts/Spells: Deathbolt (#23531)
* Scripts/Spells: Deathbolt

* Rename 9999_99_99_99_world.sql to 2019_06_28_01_world.sql

(cherry picked from commit 62b2c379b3)
2021-12-13 00:42:18 +01:00
Sorikoff
ea4c1ae7d0 Scripts/Spells: Dimensional Ripper - Area 52 (#23505)
* Scripts/Spells: Dimensional Ripper - Area 52

* Rename 9999_99_99_99_world.sql to 2019_06_28_00_world.sql

(cherry picked from commit 63f548921c)
2021-12-13 00:42:18 +01:00
Wyrserth
575f42089e Core/Spell: fix some issues with taunt spells (#23425)
(cherry picked from commit 5dc2dfd60c)
2021-12-13 00:42:18 +01:00
Treeston
9f7d3ebd6a Core/AI: Remove EnterEvadeMode calls from Guardian/Summon spell handlers. Add follow logic to CreatureAI::JustAppeared. Closes #23270.
(cherry picked from commit 8499434340)
2021-12-12 01:27:04 +01:00
Sorikoff
799fba7fd1 Scripts/Spells: Portal to Orgrimmar & Portal to Stormwind (#23463)
* Scripts/Spells: Portal to Orgrimmar & Portal to Stormwind

* Revert "Scripts/Spells: Portal to Orgrimmar & Portal to Stormwind"

This reverts commit a8055960

* Revert "Revert "Scripts/Spells: Portal to Orgrimmar & Portal to Stormwind""

This reverts commit a5be792b

* Fix NoPCH

* Clean up

* Clean up

* fixup! Clean up

* Caster -> Target

* Rename 9999_99_99_99_world.sql to 2019_06_22_01_world.sql

(cherry picked from commit ac7c72d633)
2021-12-11 23:01:46 +01:00
Sorikoff
aa407adf3e Scripts/Spells: Ultra-Advanced Proto-Typical Shortening Blaster (#23456)
* Scripts/Spells: Ultra-Advanced Proto-Typical Shortening Blaster

* Fix NoPCH

* Correct header

* fixup! Clean up

* Rename 9999_99_99_99_world.sql to 2019_06_22_00_world.sql

(cherry picked from commit 40b09e3df1)
2021-12-11 22:58:16 +01:00
Sorikoff
8fc52bc5e5 Scripts/Spells: Migrate Teleporting to Script (#23458)
* Scripts/Spells: Migrate Teleporting to Script

* Rename 9999_99_99_99_world.sql to 2019_06_21_02_world.sql

(cherry picked from commit e9d803ccee)
2021-12-11 22:28:55 +01:00
Shauren
4595e63dd7 Core/Spells: Deleted old script (partial port of a4cd4d8b87) 2021-12-11 21:40:30 +01:00
Wyrserth
07dcb28f80 Spell/Fishing: ensure that the fishing bobber expires when the Fishing channeling ends, and don't allow fish to be hooked in the instant the spell is cast. (#23448)
(cherry picked from commit 9083fc149d)
2021-12-11 16:18:57 +01:00
DanVS
f15bcebdbe Core/Spell: Jump Speed Calculations (#22886)
* Jump Speed Calculations

* Fix

(cherry picked from commit 0197a2f990)
2021-12-11 15:25:57 +01:00
Wyrserth
59da957165 Core/Spells: don't allow spells with SPELL_EFFECT_CREATE_LOOT to be cast if there isn't enough space in inventory (#23404)
* Core/Spells: don't allow spells with SPELL_EFFECT_CREATE_LOOT to be cast if there isn't enough space in inventory,

* Move GetFreeInventorySpace() to a better place, thanks ccrs!

(cherry picked from commit 218055280a)
2021-12-11 13:29:39 +01:00