diff --git a/EQ2/source/WorldServer/client.cpp b/EQ2/source/WorldServer/client.cpp index 03902f6b9..63de8396a 100644 --- a/EQ2/source/WorldServer/client.cpp +++ b/EQ2/source/WorldServer/client.cpp @@ -8260,44 +8260,18 @@ void Client::SendSpawnChanges(set<Spawn*>& spawns) { int32 vis_size = 0; int count = 0; - bool forceSend = false; - deque<EQ2Packet*> individualSpawns; for (const auto& spawn : spawns) { - if (forceSend) - { - forceSend = false; - MakeSpawnChangePacket(info_changes, pos_changes, vis_changes, info_size, pos_size, vis_size); - - for (auto& kv : info_changes) { - safe_delete_array(kv.second.data); - } - info_changes.clear(); - for (auto& kv : pos_changes) { - safe_delete_array(kv.second.data); - } - - pos_changes.clear(); - for (auto& kv : vis_changes) { - safe_delete_array(kv.second.data); - } - vis_changes.clear(); - - info_size = 0; - pos_size = 0; - vis_size = 0; - } - int16 index = GetPlayer()->GetIndexForSpawn(spawn); if (index == 0 || !GetPlayer()->WasSentSpawn(spawn->GetID()) || GetPlayer()->NeedsSpawnResent(spawn) || GetPlayer()->GetDistance(spawn) >= SEND_SPAWN_DISTANCE) continue; - /* - if (spawn->IsWidget() || spawn->info_changed || spawn->vis_changed) + + if (spawn->vis_changed) { EQ2Packet* outapp = spawn->spawn_update_packet(GetPlayer(), GetVersion(), false, false); - individualSpawns.push_back(outapp); + QueuePacket(outapp); continue; - }*/ + } if (spawn->info_changed) { auto info_change = spawn->spawn_info_changes_ex(GetPlayer(), GetVersion()); @@ -8310,7 +8284,6 @@ void Client::SendSpawnChanges(set<Spawn*>& spawns) { info_size += spawn->info_packet_size; info_changes[index] = data; - forceSend = true; } count++; } @@ -8341,7 +8314,6 @@ void Client::SendSpawnChanges(set<Spawn*>& spawns) { vis_size += spawn->vis_packet_size; vis_changes[index] = data; - forceSend = true; } count++; } @@ -8365,13 +8337,6 @@ void Client::SendSpawnChanges(set<Spawn*>& spawns) { for (auto& kv : vis_changes) { safe_delete_array(kv.second.data); } - /* - for (int i = 0; i < individualSpawns.size(); i++) - { - QueuePacket(individualSpawns[i]); - }*/ - - individualSpawns.clear(); } void Client::MakeSpawnChangePacket(map<int32, SpawnData> info_changes, map<int32, SpawnData> pos_changes, map<int32, SpawnData> vis_changes, int32 info_size, int32 pos_size, int32 vis_size) @@ -8431,7 +8396,7 @@ void Client::MakeSpawnChangePacket(map<int32, SpawnData> info_changes, map<int32 // DumpPacket(packet->pBuffer, packet->size); if (packet) { - QueuePacket(packet, true); + QueuePacket(packet); } delete[] tmp;