UNIT_FLAG_REMOVE_CLIENT_CONTROL (formerly UNIT_FLAG_DISABLE_MOVE) is a client-only feature that should not be used for NPC scripting. All applications of this flag in scripts/ have been replaced with applications/removals of the UNIT_STATE_ROOT state.
Closes#17311
SQL content based on issue 14719 by Killyana,
conditions output from Malcrom's Condition Creator
- remove hardcoded #define gossip options
- enum gossip menu IDs from DB
- remove outdated SD comments at the top of the file
The core script `npc_timothy_daniels` is no longer needed,
all the gossip handling is already present in the database.
- remove core script npc_timothy_daniels
- remove ScriptName from c_t entry in DB
* Finally this commit enables dynamic script hotswapping
and finished the PR #15671.
* Split the storage layout to use optimized storages
for database bound and unbound scripts.
* Add several unload workers to reload scripts correctly
-> Requires further investigation.
* Fixes memory leaks in ScriptMgr when dropping invalid scripts.
* Fixes VehicleScripts
* Makes OutdoorPvP scripts reloadable
* Makes InstanceMapScripts reloadable
* Makes CommandScripts reloadable
* Makes it possible to define the linkage for every module
* Move the ScriptPCH into the root directory
* Changes the SCRIPTS cmake variable to a string type:
-> -DSCRIPTS=0 is -DSCRIPTS="minimal-static" now
(builds commands and spells statically)
-> -DSCRIPTS=1 is -DSCRIPTS="static" now
(builds all modules statically)
-> -DSCRIPTS="dynamic"
(builds all modules dynamically)
-> Also the default value which is provided by the SCRIPTS
variable is overwriteable through the SCRIPTS_COMMANDS,
SCRIPTS_SPELLS... variable.
- New error message if a shutdown is delayed due to force threshold.
- New status message indicating that a server shutdown was successfully cancelled.
This PR affects the following 2 quests:
Quest ID 4001 "What Is Going On?" - part 2 (Horde)
Quest ID 4342 "Kharan's Tale" (Alliance)
Target of this PR:
Move core script npc_kharan_mighthammer to DB/SAI
(thereby removing 10 lines of hardcoded text).
* DB/conditions: extra gossip conditions
- added conditions for gossip before quest taken and after quest completed.
- removed redundant core script SAY_GET_ME_OUT_OF_HERE comment
* DB/creature: add more text to Kharan
- add all missing creature_text lines to entry 9021 Kharan Mighthammer
- add SAI duration to wait before TEXT_OVER is triggered (3000 ms)
- There's still an overload allowing for x, y, z, o to be passed directly
- Fixed default animstate for GameObject creation in many places, it should be 255, not 100 (checked in sniffs)
(cherry picked from commit 62bfee37cb)
Conflicts:
src/server/game/Entities/GameObject/GameObject.cpp
src/server/game/Entities/Object/Object.cpp
src/server/game/Spells/SpellEffects.cpp
src/server/scripts/Commands/cs_gobject.cpp
src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
src/server/scripts/Kalimdor/zone_feralas.cpp
* Commenting on a ticket no longer sends the GM's name to the ticket handler for assignment
* Closes#16091
* Closes#17686
Signed-off-by: Naios <naios-dev@live.de>
Change log:
- Timers are more accurate
- Corrected Charge ability ID based on 6.x researches
- Added Midnight's missing emotes
- Fixed issue with instance being stuck in combat in case of wipes
- Solved the rare scenario where Attumen would be summoned multiple times
- Visual spell on 3rd phase transition added
- Attumen and Midnight can now be damaged during 3rd phase transition
- Midnight calls for the aid of every horse still alive in the stables
- Use proper spells to summon Attumen and handle transitions
- Now despawns on evade
Video of encounter after changes: https://www.youtube.com/watch?v=KX0rqaBeSzw
* Removed a chunk of duplicate code
* Generalized Message notification
* Generalized checking of resources modification with a min-max
* Generalized checking of single value modification
* Closes#16858
(cherry picked from commit 775b03bf6f)
Conflicts:
src/server/scripts/Commands/cs_modify.cpp
- Clean up of Unit::SetSpeed (mostly cherry picks from the 6.x branch):
- the opcode sent depends on the unit. until now, MSG_MOVE_SET_* were sent for every units which isn't like retail behavior.
- Removed the unused method parameter "forced" from Unit::SetSpeed
- Renamed Unit::SetSpeed to SetSpeedRate
- Removed the unused method parameter "forced" from Unit::UpdateSpeed
- Added utility method Unit::SetSpeed which take the new flat value.
Conflicts:
src/server/game/Entities/Unit/Unit.cpp
src/server/scripts/Commands/cs_modify.cpp
src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp
src/server/scripts/Kalimdor/zone_azshara.cpp
src/server/scripts/Kalimdor/zone_durotar.cpp
src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp