From 6d8f75a577d5e747d95dc936db9e41a893a7057f Mon Sep 17 00:00:00 2001 From: Anonymous-275 Date: Wed, 31 Mar 2021 17:51:38 +0300 Subject: [PATCH] Queue on player list update --- include/Client.h | 8 ++++---- src/Client.cpp | 2 +- src/TNetwork.cpp | 3 ++- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/include/Client.h b/include/Client.h index 8635387..ad55b42 100644 --- a/include/Client.h +++ b/include/Client.h @@ -58,9 +58,9 @@ public: void SetIsSynced(bool NewIsSynced) { mIsSynced = NewIsSynced; } void SetIsSyncing(bool NewIsSyncing) { mIsSyncing = NewIsSyncing; } void EnqueuePacket(const std::string& Packet); - [[nodiscard]] std::queue& MissedPacketQueue() { return mMissedPacketsDuringSyncing; } - [[nodiscard]] const std::queue& MissedPacketQueue() const { return mMissedPacketsDuringSyncing; } - [[nodiscard]] size_t MissedPacketQueueSize() const { return mMissedPacketsDuringSyncing.size(); } + [[nodiscard]] std::queue& MissedPacketQueue() { return mPacketsSync; } + [[nodiscard]] const std::queue& MissedPacketQueue() const { return mPacketsSync; } + [[nodiscard]] size_t MissedPacketQueueSize() const { return mPacketsSync.size(); } [[nodiscard]] std::mutex& MissedPacketQueueMutex() const { return mMissedPacketsMutex; } void SetIsConnected(bool NewIsConnected) { mIsConnected = NewIsConnected; } [[nodiscard]] TServer& Server() const; @@ -75,7 +75,7 @@ private: bool mIsSynced = false; bool mIsSyncing = false; mutable std::mutex mMissedPacketsMutex; - std::queue mMissedPacketsDuringSyncing; + std::queue mPacketsSync; std::set mIdentifiers; bool mIsGuest = false; std::mutex mVehicleDataMutex; diff --git a/src/Client.cpp b/src/Client.cpp index 7a0371f..a57837a 100644 --- a/src/Client.cpp +++ b/src/Client.cpp @@ -82,7 +82,7 @@ TServer& TClient::Server() const { void TClient::EnqueuePacket(const std::string& Packet) { std::unique_lock Lock(mMissedPacketsMutex); - mMissedPacketsDuringSyncing.push(Packet); + mPacketsSync.push(Packet); } TClient::TClient(TServer& Server) diff --git a/src/TNetwork.cpp b/src/TNetwork.cpp index 76b8cc1..eae8f73 100644 --- a/src/TNetwork.cpp +++ b/src/TNetwork.cpp @@ -576,7 +576,8 @@ void TNetwork::UpdatePlayer(TClient& Client) { return true; }); Packet = Packet.substr(0, Packet.length() - 1); - (void)Respond(Client, Packet, true); + Client.EnqueuePacket(Packet); + //(void)Respond(Client, Packet, true); } void TNetwork::OnDisconnect(const std::weak_ptr& ClientPtr, bool kicked) {