From 312ee2b42c5a5ea4e66352728544254a52019850 Mon Sep 17 00:00:00 2001 From: hg <4683435+hgtw@users.noreply.github.com> Date: Thu, 7 Jan 2021 20:05:55 -0500 Subject: [PATCH] Don't respawn doors while clients are zoning Fixes regression from b08dc02a (PR #1051) The normal door list sent on zone entry caused unopenable double doors on clients if an api respawned them while the client was zoning. This waits until the client finishes zoning and has received the initial door list before sending any despawn/respawn packets. --- zone/entity.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zone/entity.cpp b/zone/entity.cpp index 4746ee984..b2b4b3706 100644 --- a/zone/entity.cpp +++ b/zone/entity.cpp @@ -2511,7 +2511,7 @@ void EntityList::DespawnAllDoors() auto outapp = new EQApplicationPacket(OP_RemoveAllDoors, 0); for (auto it = client_list.begin(); it != client_list.end(); ++it) { if (it->second) { - it->second->QueuePacket(outapp); + it->second->QueuePacket(outapp, true, Client::CLIENT_CONNECTED); } } safe_delete(outapp); @@ -2524,7 +2524,7 @@ void EntityList::RespawnAllDoors() if (it->second) { auto outapp = new EQApplicationPacket(); MakeDoorSpawnPacket(outapp, it->second); - it->second->FastQueuePacket(&outapp); + it->second->FastQueuePacket(&outapp, true, Client::CLIENT_CONNECTED); } ++it; }