* Core/AI: Revamp how UnitAI changes are applied
Revamp how UnitAI changes are applied by storing current AI in a variable and all previous AIs plus current in a stack.
The callers can push/pop AIs on the stack that will take effect only in next Unit::Update() call.
The current AI will be a valid object for the whole duration of Unit::Update() and until next Unit::Update() call.
* Core/AI: Apply new AI change code
* Core/AI: Fix build
* Core/AI: Fix crash on Creature::AIM_Create()
* Core/AI: Fix crash
* Core/AI: Restore ASSERT
* Core/AI: Fix UnitAI not being popped properly when restoring a charmed AI
- split the quest status check, the quest gossips are different
- remove old hardcoded text (deprecated method)
- enumerate already existing DB gossip menu option items
Quest 12288: Overwhelmed!
- Upon casting the healing quest spell, Wounded Skirmisher (npc_wounded_skirmisher)
shows $r and $c in their reply talk text because of the missing target argument,
hence not targeting the player on the quest (or the specific caster, in this case).
Text used by the NPC Wounded Skirmisher:
0 Ahh.... better.
1 Whoa - I nearly died there. Thank you, $r!
2 Thank you, $c.
Solution: add the missing target name, caster, to the Talk() script line.
I'm referencing line 97 from ChaseMovementGenerator.
That commit introduced a modification in this use case:
- Chasing target is not my current victim, I should stop moving till it is my victim again
Changed To:
- Chasing target is not my current vicitm, I should stop chasing
My correction:
- I dont care about the relation of my current victim and my chasing target, I'm commanded to chase, something will tell me to stop chasing
--> Most likely: evade, new attackstart, etc.
the rest are just minor changes
Closes#22754#21887#17882
Ty sirikfoll for all help
Bonus fixes: Abomination letting worms when fight end, visual missing, archmages stop respawn if corpse despawn
* Ruthless Cunning and Returning the Favor
* no more magic numbers
* now with scripted ai and condition
* travis
* more travis
* jackpoz
* now with no banner spellscripts
* typo
* Rename 9999_99_99_99_world.sql to 2018_12_03_00_word.sql
* Core/GameEvent: weekend xp rate
by kline
* Update to recent code
* compile fix try
things of copy and paste 4 years old code xd
* more code update
* forgot to change this
* Update worldserver.conf.dist
* Added function to calculate weekend event xp rates
By greenbagels
* Cleaning using scripts
* Implement daymask and rename variables etc.
* Rename script file weekend -> boosted
* Update src/server/game/World/World.cpp
Co-Authored-By: Aokromes <Aokromes@users.noreply.github.com>
* Fix xp multiplier not applying to quest rewards
* Disable xp boost script when no boosted days selected
* Add rotation to .gob info
- Add rotation (yaw, pitch, roll) to .gob info command
- Replace LANG_SPAWNINFO_DISTANCEFROMPLAYER with LANG_SPAWNINFO_ROTATION
- Fix description of .distance to describe the command arguments (the more you know..)
- Fix .gob info guid targetting nearest gameobject instead of finding with given guid
- Reorder the info data slightly
- Print location and rotation data regardless of object found in world
- Add error messages for when object is not found by guid or entry
High Justice Grimstone's movement script timers improvement in Ring of the Law.
case 6 & case 7 modifications:
- Event_Timer = 5000; // originally 0
Closes#20499 (High Justice Grimstone issue)