From 8419e284d48bac823c861c480719eb3d3b8290a9 Mon Sep 17 00:00:00 2001 From: Akkadius Date: Sun, 2 Mar 2025 23:10:43 -0600 Subject: [PATCH] Fix --- world/zonelist.cpp | 3 ++- zone/worldserver.cpp | 13 +++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/world/zonelist.cpp b/world/zonelist.cpp index f8d54113c..fdf8dcf39 100644 --- a/world/zonelist.cpp +++ b/world/zonelist.cpp @@ -894,7 +894,8 @@ void ZSList::SendServerReload(ServerReload::Type type, uchar *packet) ServerReload::Type::Commands, ServerReload::Type::PerlExportSettings, ServerReload::Type::DataBucketsCache, - ServerReload::Type::WorldRepop + ServerReload::Type::WorldRepop, + ServerReload::Type::WorldWithRespawn }; // Set requires_zone_booted flag before executing reload logic diff --git a/zone/worldserver.cpp b/zone/worldserver.cpp index 9c0950b47..adb6cd091 100644 --- a/zone/worldserver.cpp +++ b/zone/worldserver.cpp @@ -4663,14 +4663,19 @@ void WorldServer::ProcessReload(const ServerReload::Request& request) case ServerReload::Type::WorldRepop: entity_list.ClearAreas(); parse->ReloadQuests(); - zone->Repop(); + if (zone && zone->IsLoaded()) { + zone->Repop(); + } break; case ServerReload::Type::WorldWithRespawn: - entity_list.ClearAreas(); parse->ReloadQuests(); - zone->Repop(); - zone->ClearSpawnTimers(); + if (zone && zone->IsLoaded()) { + entity_list.ClearAreas(); + zone->Repop(); + zone->ClearSpawnTimers(); + } + break; case ServerReload::Type::ZonePoints: