Commit Graph

26588 Commits

Author SHA1 Message Date
Keader
42ad1b86a1 Core/Misc: Implemented Icecrown Citadel buff disable (#23394)
Closes #8576
Closes #7940

(cherry picked from commit 94b60ff0ef)
2021-12-11 11:59:54 +01:00
jackpoz
ab3edebb5d Core/Player: Remove all Motion Masters when teleporting
Fix #22859

(cherry picked from commit 72fc79a9e6)
2021-12-11 11:38:24 +01:00
jackpoz
1b6dee9990 Core/SmartAI: Rename SMART_EVENT_HEALT_PCT to SMART_EVENT_HEALTH_PCT
(cherry picked from commit 50ed1bb5b3)
2021-12-11 11:35:07 +01:00
Keader
79d4a0f8aa Scripts/Icecrown Citadel: Fixed Heroic Attempts logic (#23379)
(cherry picked from commit 136964769d)
2021-12-11 01:27:48 +01:00
jackpoz
6303c7bcb1 Core/Logs: Allow to log startup logs into Database appender
(cherry picked from commit dbd8b3fc63)
2021-12-10 22:49:10 +01:00
Wyrserth
88d5b91c05 Script/Dalaran: don't allow Dalaran faction guards to teleport a player that has the Trespasser! debuff. (#23373)
(cherry picked from commit 5016f588d5)
2021-12-10 22:47:33 +01:00
ccrs
fb3b94dfe5 Core/Log: 1f85348 followup
add missing logger entries

(cherry picked from commit fb28cee6ee)
2021-12-10 22:46:25 +01:00
ccrs
41dba7c456 Scripts/ZulGurub: general instance related refactoring/updating
plus couple event-spells-ai related corrections
plus codestyle cleanup

(cherry picked from commit 7b2defe5a0)
2021-12-10 22:45:42 +01:00
ForesterDev
dd4da6ce5b Core/Logging: Split logs for unknown and zero triggered spells (#23180)
* Core/Conditions: implement CONDITION_GAMEMASTER

* Split logs for unknown and zero triggered spells

* Update SpellAuraEffects.cpp

* Update SpellAuraEffects.cpp

* Update SpellAuraEffects.cpp

* Update SpellEffects.cpp

* Update SpellAuraEffects.cpp

* Update SpellAuraEffects.cpp

* Update SpellEffects.cpp

* Update SpellEffects.cpp

(cherry picked from commit 1f853480ee)
2021-12-10 21:41:50 +01:00
Wyrserth
db6fdef3d7 Script/Quest: implement event for the quest Orabus the Helmsman (#23346)
* Script/Quest: implement event for the quest Orabus the Helmsman.

Thanks Wyreth for the original script.

* Fix coordinates that I inverted by mistake.

* Rename 9999_99_99_99_world.sql to 2019_06_04_04_world.sql

(cherry picked from commit b5e04c8920)
2021-12-10 21:38:27 +01:00
Killyana
adb5535483 Spell/Script: Stasis Field
Closes #23355

(cherry picked from commit 7dd87e3df4)
2021-12-10 21:37:45 +01:00
Wyrserth
b6d28b5497 Script/GunDrak: fix order for yell and altar texts on death for two bosses (#23357)
(cherry picked from commit 65aea13c25)
2021-12-10 21:16:10 +01:00
Wyrserth
647893597c Script/Creature: implement spell effect for the item Prototype Neural Needler used on Imprisoned Beryl Sorcerer (#23349)
* Script/Creature: implement spell effect for the item Prototype Neural Needler used on Imprisoned Beryl Sorcerer.

* Rename 9999_99_99_99_world.sql to 2019_06_03_02_world.sql

(cherry picked from commit eb5d1d3248)
2021-12-10 21:15:56 +01:00
Wyrserth
b3e7be5387 Script/Creature: calculate Traveler's Tundra Mammoth's NPCs' exit position based on current player's position (#23344)
* Script/Creature: calculate Traveler's Tundra Mammoth's NPCs' exit position based on current player's position.

* Comment out unused argument.

(cherry picked from commit d71a0608bf)
2021-12-10 21:12:48 +01:00
Wyrserth
d037c6b086 Core/SAI: add action_param3 to SMART_ACTION_REMOVEAURASFROMSPELL to allow it to remove only auras from spells that were cast by the entity itself. (#23345)
(cherry picked from commit d365dd9157)
2021-12-10 21:12:25 +01:00
Meji
0a8f79ad5a Core/BattlePets: Improvements when enabling battle pets (#27367) 2021-12-10 20:17:21 +01:00
Shauren
747da1f804 Core/Spells: Implemented SPELL_ATTR1_CAST_WHEN_LEARNED 2021-12-10 18:47:09 +01:00
jackpoz
efbb6f5b7d Core/Map: Don't log errors about Area ID 0
Restore a check about Area ID 0 that would silently ignore this case instead of spamming log errors. Check removed in e79c595b69
Fix #23085

(cherry picked from commit bda351d7f1)
2021-12-09 00:32:48 +01:00
jackpoz
363f385fc0 Scripts/HallsOfLightning: Fix Volkhan spamming in chat when wiping at 10% health
Ref #23082

(cherry picked from commit 2d5387ea42)
2021-12-09 00:32:32 +01:00
Ovah
0feebcdf5b Core/Groups: do not allow lfg groups to change the loot mode (#23336)
While the UI does not allow changing the loot mode you can still trigger the opcode by running interface scripts which we will now block as well so nobody can ninja-loot anymore.

(cherry picked from commit 49a9cbf20a)
2021-12-09 00:32:17 +01:00
jackpoz
b4652a38d3 Core/Misc: Headers cleanup
Use simple std::string concatenation instead of stringstream to avoid including <sstream> header.

(cherry picked from commit 9c790e231e)
2021-12-09 00:32:05 +01:00
Giacomo Pozzoni
33347c7d5f Core/Misc: Fix static analysis issues
Fix static analysis issues reported by Coverity Scan

(cherry picked from commit e12398afdc)
2021-12-09 00:24:41 +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
Wyrserth
9d865f7536 Core/Misc: don't allow players to use/activate/loot non-allowed gameobjects while under the effect of a damage immunity aura (#23319)
* Core/Misc: don't allow players to use/activate/loot non-allowed gameobjects while under the effect of a damage immunity aura.

* Forgot to change this in last-second rename.

* Apply suggested changes, thanks Shauren!

(cherry picked from commit 8bc5451864)
2021-12-09 00:13:59 +01:00
jackpoz
049606e31e Core/MovementGenerator: Add more details to asserts
Implement GetDebugInfo in MovementGenerator, PathMovementBase, FlightPathMovementGenerator, WaypointMovementGenerator.
Add an additional assert in FlightPathMovementGenerator::DoEventIfAny(), the input node must not be null

(cherry picked from commit 9da8123959)
2021-12-08 23:51:21 +01:00
Wyrserth
1edd93bc0c Core/Script: add script hook to allow overriding of a vehicle passenger's exit position (#23322)
* Core/Script: add script hook to allow overriding of a vehicle passenger's exit position.

* Allow to change orientation, and fix nopch.

* Keep original orientation, thanks jackpoz!

* Update Unit.cpp

Code cleanup

* Update Unit.cpp

(cherry picked from commit 88c6c61b95)
2021-12-08 23:51:07 +01:00
jackpoz
2cade0e6e3 Core/Channel: Sanitize channel names
(cherry picked from commit 7b8f294c02)
2021-12-08 23:47:07 +01:00
jackpoz
97249ff7b4 Core/Channel: Fix CRT Debug Assert triggered with invalid channel names
(cherry picked from commit f0bd90cc35)
2021-12-08 23:43:19 +01:00
Giacomo Pozzoni
6e28ecd22e Core/Movement: Fix assertion triggered in SplineChainMovementGenerator
Fix an assertion triggered in SplineChainMovementGenerator happening when a new generator is added while last spline of the SplineChainMovementGenerator is being processed but is not finalized yet.
Fix #23077

(cherry picked from commit 5d7f0eef6e)
2021-12-08 23:35:01 +01:00
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 635cefc67e)
2021-12-08 23:22:12 +01:00
lactoseti
6b2e40257a Creature/Script: npc_tallhorn_stag
Ref #2623

(cherry picked from commit bfffa5d45e)
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 d8ce37e0c9)
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 a70845c93d)
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 9e58ef6940)
2021-12-08 21:33:58 +01:00
Kittnz
9c2ce24c8a Core/Weather: Define WEATHER_STATE_DRIZZLE state
(cherry picked from commit cf05c3dd2c)
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 2829f5fb9c)
2021-12-08 20:36:43 +01:00
Killyana
229d35adba DB/Creature: Dark Portal Dummy 1.30
(cherry picked from commit fdec429f18)
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 ad89472fe3)
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 507a56d627)
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 797fba98e9)
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 457fc22473)
2021-12-06 23:27:45 +01:00
Shauren
9005bdc684 Core/GameObjects: Validate rotation quaternion at startup
Ref #23306

(cherry picked from commit 9dbedb6b64)
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 e4a1556e09)
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 c826ec0a3c)
2021-12-05 23:00:39 +01:00
ccrs
a41cac45f4 Core/Handlers: random PetHandler cosmetics & codestyle
(cherry picked from commit 48208b8dde)
2021-12-05 23:00:15 +01:00