- Map::RemoveRespawnTime(SpawnObjectType, LowType, doRespawn) split into Map::Respawn and Map::RemoveRespawnTime, without the extra boolean
- Map::RemoveRespawnTime(RespawnInfo*) merged into Map::DeleteRespawnInfo(RespawnInfo*) and is now private
- Map::DeleteRespawnInfo(void) renamed to Map::UnloadAllRespawnInfos to properly describe what it does
- Map::ProcessRespawns now actually saves the delayed respawn time to DB if the respawn was delayed
- Map::AddRespawnInfo now takes const reference, and returns success as a boolean
- Map::AddRespawnInfo no longer offers an unused "replace" parameter
- Map::DeleteRespawnInfo no longer offers a variety of unused private overloads
- Map::SaveRespawnTime no longer offers a tantalizing writeDB parameter. Parameter is now called "startup" to properly describe what it does.
- Map::SaveRespawnInfoDB now takes RespawnInfo reference instead of all the various fields. Still public because compatibility mode. QQ.
- Map::GetWorldObjectBySpawnId sanitized
- Map::GetXRespawnTime methods sanitized to all go through Map::GetRespawnTime
(cherry picked from commit d60082ae86)
Add .debug guidlimits <optional map id> chat command to show the highest low guid counter for Creature and GameObject, useful when reaching Respawn.GuidWarnLevel
(cherry picked from commit 7421ccaf7e)
Consider the case of Player A inviting Player B to a Calendar Event. After Player B clicks on Accepts/Tentative/Reject, the calendar shows that status for Player A instead.
(cherry picked from commit 7f3d8c99bb)
Also restore PrevQuestId/NextQuestId error logs involving breadcrumb quests. Special cases must be handled via conditions.
(cherry picked from commit 7f63c504d5)
There are complex cases where breadcrumb quests are mutually exclusive with other breadcrumbs leading to other quests, chaining them shouldn't generate log errors.
(cherry picked from commit e6080116f9)
- Add missing flames on item use.
- Prevent trigger creatures from wandering around and falling off the platform
- Add conditions to the item Gnomish Grenade
(cherry picked from commit 76beda3768)
* 23285 Fixed lever respawn and future encounters after it respawns.
* Removed unnecessary additional container.
Made lever not to despawn and respawn but rather change flags only.
* Made one conditional branch easier to debug.
(cherry picked from commit c71e36acae)
* Core/Misc: More coding standards
* revert part
* "void " or more to "void "
* fix? reject
* remove more double whitespaces
* remove more double whitespaces
* more standards
* more coding standards
* More standards
* more coding
* more coding standards
* more coding standards
* And more standards
(cherry picked from commit 574a7c8d3d)
- .npc respawn no longer causes stupid things to happen (Fixes#23014)
- ::DeleteFromDB methods on Creature and GameObject rewritten to be as sensible as such a colossally stupid method can ever be. They're static now.
- .npc delete and .gobj delete ported to new argument handling, and rewritten as per above. They can no longer crash the server when used in instances, too. Yay for that.
- Adjusted various dusty cobwebbed hacks around the core (why does waypoint visualization use permanent spawns *shudder*) to still work too.
(cherry picked from commit 84b7b2e08e)