Selective saving for map and location (#732)

* Don't save the map and char location info if
we are in an instanced 
* LUP worlds will be handled in a future PR
* simplify check
This commit is contained in:
Aaron Kimbrell
2022-08-16 20:53:28 -05:00
committed by GitHub
parent 3b7f1dad54
commit 976bd3c41b
2 changed files with 14 additions and 9 deletions

View File

@@ -301,9 +301,9 @@ void Character::SaveXMLToDatabase() {
character->SetAttribute("gm", m_GMLevel);
character->SetAttribute("cc", m_Coins);
auto zoneInfo = dZoneManager::Instance()->GetZone()->GetZoneID();
// lzid garbage, binary concat of zoneID, zoneInstance and zoneClone
if (Game::server->GetZoneID() != 0) {
auto zoneInfo = dZoneManager::Instance()->GetZone()->GetZoneID();
if (zoneInfo.GetMapID() != 0 && zoneInfo.GetCloneID() == 0) {
uint64_t lzidConcat = zoneInfo.GetCloneID();
lzidConcat = (lzidConcat << 16) | uint16_t(zoneInfo.GetInstanceID());
lzidConcat = (lzidConcat << 16) | uint16_t(zoneInfo.GetMapID());