aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Instances/InstanceLockMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Instances/InstanceLockMgr.cpp')
-rw-r--r--src/server/game/Instances/InstanceLockMgr.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Instances/InstanceLockMgr.cpp b/src/server/game/Instances/InstanceLockMgr.cpp
index 94cfd09706c..b1c645f46e9 100644
--- a/src/server/game/Instances/InstanceLockMgr.cpp
+++ b/src/server/game/Instances/InstanceLockMgr.cpp
@@ -346,6 +346,9 @@ InstanceLock* InstanceLockMgr::UpdateInstanceLockForPlayer(CharacterDatabaseTran
if (!entries.MapDifficulty->IsUsingEncounterLocks())
instanceLock->GetData()->CompletedEncountersMask |= updateEvent.InstanceCompletedEncountersMask;
+ if (updateEvent.EntranceWorldSafeLocId)
+ instanceLock->GetData()->EntranceWorldSafeLocId = *updateEvent.EntranceWorldSafeLocId;
+
if (instanceLock->IsExpired())
{
ASSERT(instanceLock->IsExtended(), "Instance lock must have been extended to create instance map from it");
@@ -393,6 +396,9 @@ void InstanceLockMgr::UpdateSharedInstanceLock(CharacterDatabaseTransaction tran
updateEvent.InstanceId, updateEvent.CompletedEncounter->ID, updateEvent.CompletedEncounter->Name[sWorld->GetDefaultDbcLocale()]);
}
+ if (updateEvent.EntranceWorldSafeLocId)
+ sharedData->EntranceWorldSafeLocId = *updateEvent.EntranceWorldSafeLocId;
+
trans->PAppend("DELETE FROM instance2 WHERE instanceId=%u",
sharedData->InstanceId);
std::string escapedData = sharedData->Data;