diff --git a/src/servers/sapphire_zone/Zone/HousingZone.h b/src/servers/sapphire_zone/Zone/HousingZone.h index 146ad8e2..428c50c9 100644 --- a/src/servers/sapphire_zone/Zone/HousingZone.h +++ b/src/servers/sapphire_zone/Zone/HousingZone.h @@ -21,6 +21,8 @@ class HousingZone : public Zone /* returns current ward number for this zone */ uint8_t getWardNum() const; + + const uint32_t m_wardMaxNum = 18; private: uint8_t m_wardNum; }; diff --git a/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp b/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp index ab0939ad..8de3479e 100644 --- a/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp +++ b/src/servers/sapphire_zone/Zone/TerritoryMgr.cpp @@ -152,6 +152,7 @@ bool Core::TerritoryMgr::createHosuingTerritories() auto territoryId = territory.first; auto territoryInfo = territory.second; uint32_t wardNum; + uint32_t wardMaxNum = 1; if( territoryInfo->name.empty() ) continue; @@ -161,7 +162,7 @@ bool Core::TerritoryMgr::createHosuingTerritories() if( !pPlaceName || pPlaceName->name.empty() || !isHousingTerritory( territoryId ) ) continue; - for( wardNum = 0; wardNum < 18; wardNum++ ) + for( wardNum = 0; wardNum < wardMaxNum; wardNum++ ) { uint32_t guid = getNextInstanceId(); pLog->info( std::to_string( territoryId ) + @@ -174,6 +175,7 @@ bool Core::TerritoryMgr::createHosuingTerritories() auto pHousingZone = make_HousingZone( wardNum, territoryId, guid, territoryInfo->name, pPlaceName->name ); pHousingZone->init(); + wardMaxNum = pHousingZone->m_wardMaxNum; InstanceIdToZonePtrMap instanceMap; instanceMap[guid] = pHousingZone;