Commit Graph
26209 Commits
Author SHA1 Message Date
Ovah 0d433b1bc8 Core/Players: out of range group updates will now get sent every 5 seconds instead of as soon as they are available to reflect retail behaivior. (#23323)
* according to sniffs the group update packet for out of range members has a fixed 5 seconds interval instead of spaming packets like crazy for example when updating positions. On 4.x and above this will fix a very nasty and ugly fps drop
* validated with 4.3.4 and 3.3.5 sniffs

(cherry picked from commit 635cefc67e25c4318d67bf557b66958081c02ac4)
2021-12-08 23:22:12 +01:00
lactoseti 6b2e40257a Creature/Script: npc_tallhorn_stag
Ref #2623

(cherry picked from commit bfffa5d45e9d07636930e89916986edf7c086c1e)
2021-12-08 23:20:51 +01:00
Wyrserth 2344671af5 Core/Console: start CliRunnable thread after all log messages have been printed. (#23321)
(cherry picked from commit d8ce37e0c90a3da2d42a09d33523e4403aab2723)
2021-12-08 21:55:04 +01:00
Ovah 09fe78dd59 Core/GameObjects: goober gameobjects may reset only if they have a lock id or a reset time specified (#23298)
* Core/GameObjects: goober gameobjects may reset only if they have a lock id

Tests have shown that Goobers without a lock id (Data0=0) are not allowed to reset their go state such as the teleporters in Ulduar and Icecrown Citadel. The tests has been expanded by checking 4.x goobers as well and the perfect example that confirms that result is the Ancient Bell for Atramedes' intro which also is not suposed to reset after using it.

* Core/GameObjects: allow to reset goobers without a lock id if a reset time is defined

* fixed a typo

(cherry picked from commit a70845c93de0902c4c6fa55ff10293f7e3679ac5)
2021-12-08 21:54:41 +01:00
jackpoz e9aed3e442 Core/SmartAI: Improve SMART_EVENT_GOSSIP_HELLO
Add another value to event_param1 for SMART_EVENT_GOSSIP_HELLO to support all cases of OnGossipHello/OnReportUse in GameObjects:
- event_param1 set to 0: execute the action for both OnGossipHello and OnReportUse. This might result in the action being executed twice when clicking the GameObject
- event_param1 set to 1: execute the action for only OnGossipHello
- event_param1 set to 2: execute the action for only OnReportUse

(cherry picked from commit 9e58ef6940c78d92f1553cf7ab75e87a6e2cf112)
2021-12-08 21:33:58 +01:00
Kittnz 9c2ce24c8a Core/Weather: Define WEATHER_STATE_DRIZZLE state
(cherry picked from commit cf05c3dd2c8fd27e0cb7a7e76913ba46cbee0a2c)
2021-12-08 20:37:10 +01:00
Killyana 8f1020ec78 DB/Creature: Hydross the unstable npc triggers
Update the correct channel spell SPELL_BLUE_BEAM and spawn triggers used to cast it

(cherry picked from commit 2829f5fb9ce4d61ae6e88cf65ed7302985e5cf36)
2021-12-08 20:36:43 +01:00
Killyana 229d35adba DB/Creature: Dark Portal Dummy 1.30
(cherry picked from commit fdec429f189ac88381b1ba9f8d83ef5f4f9e0017)
2021-12-08 20:31:38 +01:00
Shauren a937767289 Core/Misc: Exclude boost 1.78 and newer from boost_1_73_process_windows_nopch hack 2021-12-08 19:02:59 +01:00
Shauren df2d0f3670 Core/AreaTriggers: Added helper static function AreaTrigger::CreateNewMovementForceId for use in scripts with movement forces 2021-12-08 19:02:33 +01:00
Shauren e2de5000ac Core/Movement: Defined movement force type enum 2021-12-08 19:02:02 +01:00
funjoker 833e179985 Core/Misc: Add helper table phase_name and improve .npc info and .gps
.gps and .npc info now displays names for known phase names
2021-12-07 20:38:26 +01:00
Gildor 9752ef4d6e Core/Spells: Fix spells with Health Leech effect, now check damage absorb when calculate Heal (#23312)
Closes: #23311
(cherry picked from commit ad89472fe3512b4a5f4160240154fd5b11a3b07c)
2021-12-07 00:31:48 +01:00
jackpoz 6034992dff Core/SmartAI: Implement SMART_EVENT_SUMMONED_UNIT and SMART_EVENT_SUMMON_DESPAWNED for GameObject owners
(cherry picked from commit 507a56d62764f63113d35dfcca9273b8d0b16cc5)
2021-12-07 00:31:26 +01:00
Giacomo Pozzoni 5f545f5402 3.3.5 gameobject summoner (#23289)
* Scripts/Misc: Change IsSummonedBy(Unit*) to IsSummonedBy(WorldObject*)

* Scripts/Misc: Fix build

* Core/TempSummons: Rename GetSummoner() to GetSummonerUnit()

* Core/TempSummons: Add support to TempSummons::GetSummoner() to return GameObject too

* Fix build

* Core/TempSummons: Allow GameObject to be owner of TempSummon

* Core/TempSummons: Add support to SAI for GameObject owner of TempSummon

* Scripts/Misc: Fix no-pch build

* Core/TempSummons: Implement PR comments

(cherry picked from commit 797fba98e95da1236465a15061ec4122d7ec33fe)
2021-12-07 00:02:03 +01:00
jackpoz 54044bda82 Core/SmartAI: Fix SMART_EVENT_SUMMON_DESPAWNED
Fix SMART_EVENT_SUMMON_DESPAWNED not working when event_param1 was set to any value other than 0

(cherry picked from commit 457fc224733cc78cedc5e956442a9f5d7bd2f049)
2021-12-06 23:27:45 +01:00
Shauren 9005bdc684 Core/GameObjects: Validate rotation quaternion at startup
Ref #23306

(cherry picked from commit 9dbedb6b644860020e5abd369fb59c63f49727b8)
2021-12-06 23:27:05 +01:00
Shauren 6ebd4eb202 Core/Misc: Fixed dynamic build 2021-12-06 10:24:29 +01:00
ccrs 14712653dd Core/PetAI: apply some movement related corrections
Unit::StopMoving() is evil, and so is MotionMaster::Clear()

the first can really mess up existing movement generators
the second can interrupt "controlled" movements... can do it literally mid-air

(cherry picked from commit e4a1556e09ea38ece9a76b0d190d2b2f29bf5bb9)
2021-12-05 23:01:22 +01:00
ccrs 4765668718 Core/Handlers: apply some movement related corrections
Unit::StopMoving() is evil, and so is MotionMaster::Clear()

the first can really mess up existing movement generators
the second can interrupt "controlled" movements... can do it literally mid-air

(cherry picked from commit c826ec0a3c17f86f8a3e44455c533fb46f239720)
2021-12-05 23:00:39 +01:00
ccrs a41cac45f4 Core/Handlers: random PetHandler cosmetics & codestyle
(cherry picked from commit 48208b8dde9fe69131f44bc49a52d8bff90db9ef)
2021-12-05 23:00:15 +01:00
ccrs c926184bca Core/Movement: move DelayedAction into MotionMaster and add a couple defines
(cherry picked from commit 2b78c70810cba22492b2586c6d79a90849d74ff9)
2021-12-05 22:50:21 +01:00
jackpoz 7fc359559f Core/Misc: Fix static analysis issues reported by Coverity
(cherry picked from commit a0bd68cf465517786d16bcb145ed3fc8bc5b5b98)
2021-12-05 22:44:38 +01:00
Killyana c287485a7b Spell/Scripts: Add cooldown for Arcano-Scorp spells
Closes #23287

(cherry picked from commit a0d41c314fcce2b7e941628b3b9b1710cc6acee8)
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 4d04344b414adc965bd2760d3f30338bcce70431)
2021-12-05 18:44:59 +01:00
ccrs 4f49cef15c Build: fix variable order initialization error
fatal error: field 'Action' will be initialized after field 'Validator' [-Wreorder]

(cherry picked from commit 71e7394b74bc36467f478986c0bd179e18e04fb8)
2021-12-05 18:40:20 +01:00
ccrs 36a1d00444 Core/Movement: implement MotionMasterDelayedAction validator
(cherry picked from commit b2b85dedb6fe1ad120c9f3eeb280fc65da360dd5)
2021-12-05 18:40:11 +01:00
ccrs 86b4aa01bb Core/AI: PetAI method reordering
(cherry picked from commit acbfac7b1321f0b23f601df531af9958a369ea2f)
2021-12-05 18:40:05 +01:00
Killyana cb9a1c38f1 Instance/Script: Blood Furnace
Ref #23285

(cherry picked from commit 9435caa8d110ebfec894c7f99541f77dc6a83ff1)
2021-12-05 18:39:09 +01:00
ccrs 97dddac75a Core/PetAI: apply some movement related corrections
Unit::StopMoving() is evil, and so is MotionMaster::Clear()

the first can really mess up existing movement generators
the second can interrupt "controlled" movements... can do it literally mid-air

(cherry picked from commit 74678b247e04728562e78f6a624577964020a7f0)
2021-12-05 18:37:57 +01:00
ccrs 6814b4d32b Core/PlayerAI: apply some movement related corrections
Unit::StopMoving() is evil, and so is MotionMaster::Clear()

the first can really mess up existing movement generators
the second can interrupt "controlled" movements... can do it literally mid-air

(cherry picked from commit a4e94dcf6bf654ef57a735a67d5e8850390c2d96)
2021-12-05 18:37:48 +01:00
ccrs c511fa2803 Core/Misc: remove incorrect ClearUnitState calls related to movement
these unit states should never be removed outside motionmaster's handlings

(cherry picked from commit 79b90f9d3afb3815e265fc59a1e98c92ec788012)
2021-12-05 18:37:12 +01:00
Aokromes 1d22ade73f Core/Creature: equipment_id field on creature table is not working correctly, if it's set to 0 the npc still spawn with the equipement. (#23273)
By Malcrom
Closes #16416

(cherry picked from commit 61ba477c7733e2d69f1bc287f2bff853cbc67d16)
2021-12-05 18:20:36 +01:00
ccrs bda32dfbd1 Core/AI: couple movement related corrections in FollowerAI
plus EnterEvadeMode streamline

(cherry picked from commit f309b49eb12b09e7afc5d5af157f81688c346b8f)
2021-12-05 16:51:19 +01:00
ccrs 88f5536c43 Core/AI: streamline FollowerAI::MoveInLineOfSight with SmartAI and EscortAI
plus another method reorganization

(cherry picked from commit d3b8d69e38122d64daaac2d1cb7dd002ade7fbd5)
2021-12-05 16:50:53 +01:00
ccrs edbf45404b Core/AI: streamline FollowerAI::AssistPlayerInCombatAgainst with SmartAI and EscortAI
plus couple method reorganizations

(cherry picked from commit 0e22d61d4a85bc8d5080474a007ba2fc72842af6)
2021-12-05 16:50:15 +01:00
ccrs 844f969ed7 Core/AI: logs, codestyle & cosmetics standarization
(cherry picked from commit fdb71ce19e02b44323fbb9dfa5f07dae2a35f8ba)
2021-12-05 16:48:58 +01:00
ccrs 672d4d6baa Core/AI: silence a freaking annoying VS IntelliSense warning
(cherry picked from commit 0eb5d240fa82592ff7a4b2df81206ac49df628e2)
2021-12-05 16:19:57 +01:00
ccrs dd11603150 Core/AI: variable naming standarization
plus minimum codestyle changes

(cherry picked from commit 179c7da1fc264b1444aa50632317e16dca02f78b)
2021-12-05 16:17:02 +01:00
ccrs 6efb8d2d22 Scripts/Northrend: couple cosmetic corrections after 552720a
(cherry picked from commit 7025b0065646e0d70ba2ca0ef807ff4e9d8612ce)
2021-12-05 16:02:29 +01:00
Wyreth 40ec90e1f5 Scripts/Northrend: improvements for quest Get Me Outa Here! (11673) (#20753)
* Script/Quest: improvements for quest Get Me Outa Here! (11673).

* Happiness for our Travis overlord

* Update 9999_99_99_99_world_quest_get_me_outa_here.sql

* Update zone_borean_tundra.cpp

* Update 9999_99_99_99_world_quest_get_me_outa_here.sql

* Update 9999_99_99_99_world_quest_get_me_outa_here.sql

* Fix hook that got renamed

* Update 9999_99_99_99_world_quest_get_me_outa_here.sql

* Rename 9999_99_99_99_world_quest_get_me_outa_here.sql to 2019_05_11_08_world.sql

(cherry picked from commit 552720a993cd02e47956cf99e41715b244e0b0eb)
2021-12-05 15:15:52 +01:00
Shauren dc4b516844 Core/Movement: Use correct root check
(cherry picked from commit 3e9239a1e552d926caccf7e9a588e8d82ce0b9ee)
2021-12-05 14:38:39 +01:00
Shauren 34eedc2ad8 Core/Movement: Prevent rooted units from falling
* Fixes a client freeze

Closes #23042

(cherry picked from commit 99a9129a72a594cab8f3b15d9da388cf99afa47b)
2021-12-05 14:38:26 +01:00
brotalnia ab988dc982 Core/Spells: Return CheckCast result from CastSpell (#23236)
* Return CheckCast result from CastSpell

* Return cast result from UnitAI methods too.

(cherry picked from commit 49d0a5bbb69dd352bac0009625ded2c472b66805)
2021-12-05 14:37:13 +01:00
Aokromes 8f8ea509cb Core/Movement: Fix Warrior's Charge launch visual while jumping backw… (#23243)
* Core/Movement: Fix Warrior's Charge launch visual while jumping backwards

By Natureknight

* fix no-pch

(cherry picked from commit cc1a5202995b2c70eb2d0d4af36c593011234e35)
2021-12-05 14:03:47 +01:00
Wyrserth 558772a0bc Core/Quest: improve source item deletion logic for items that give quests (#23250)
* Core/Quest: improve source item deletion logic for items that give quests.

Prevent deletion of items that aren't supposed to be destroyed (like Demon Scarred Cloak).

* Whoops.

(cherry picked from commit 49dc8a8e4461063b4500e6b8af4eefadbd6698a1)
2021-12-05 14:01:48 +01:00
Shauren 3a5f87ccb8 Core/AreaTriggers: Initialize _spawnId in constructor 2021-12-05 11:17:54 +01:00
Shauren 77ddb4da81 Core/AreaTriggers: Move ScriptName from areatrigger_template to areatrigger_create_properties and areatrigger tables 2021-12-04 23:47:40 +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
Shauren 6e5f35a14c Core/Quests: Allow more objects to update their dynamicflags in Player::UpdateForQuestWorldObjects 2021-12-04 21:18:46 +01:00