diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index e51bfbc..18eff83 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -89,7 +89,7 @@ void Room::Update(int delta_time) return; } - real_alive_count_ = 0; + real_alive_count_stat_ = 0; elapsed_time_ += delta_time; while (elapsed_time_ >= 50) { if (frame_no % 2 == 0) { @@ -104,6 +104,7 @@ void Room::Update(int delta_time) ++frame_no; elapsed_time_ -= 50; } + real_alive_count_ = real_alive_count_stat_; } int Room::GetPlayerNum() diff --git a/server/gameserver/room.h b/server/gameserver/room.h index 9af7727..1e55f05 100644 --- a/server/gameserver/room.h +++ b/server/gameserver/room.h @@ -74,7 +74,7 @@ public: int GetPlayerNum(); int AliveCount(); inline int RealAliveCount() { return real_alive_count_; } - inline void IncRealAliveCount() { ++real_alive_count_; } + inline void IncRealAliveCount() { ++real_alive_count_stat_; } int ActiveCount(); Player* GetPlayerByAccountId(const std::string& accountid); Player* GetPlayerByUniId(int uniid); @@ -171,6 +171,7 @@ private: int elapsed_time_ = 0; int alive_count_ = 0; int real_alive_count_ = 0; + int real_alive_count_stat_ = 0; int active_count_ = 0; int force_shua_android_times_ = 0; MetaData::AirLine* airline_ = nullptr;