From ea02c777f3ff944b53e8944d234336f49f5ec4f9 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 7 Apr 2023 12:13:55 +0800 Subject: [PATCH] 1 --- server/gameserver/room.cc | 4 ++-- server/gameserver/room.h | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index 87e16882..ff50fddf 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -1015,8 +1015,8 @@ bool Room::CanJoin(class MatchTeam* team) void Room::OnPlayerOffline(Player* hum) { - if (GetOnlinePlayerNum() <= 0) { - xtimer.SetTimeoutEx + if (GetOnlinePlayerNum() <= 0 && game_over_timer.expired()) { + game_over_timer = xtimer.SetTimeoutWpEx ( SERVER_FRAME_RATE * 15, [this] (int event, const a8::Args* args) diff --git a/server/gameserver/room.h b/server/gameserver/room.h index c7186c33..465d7bdc 100644 --- a/server/gameserver/room.h +++ b/server/gameserver/room.h @@ -77,6 +77,7 @@ public: bool stop_world = false; //target_uniid, frameno std::map report_bullet_hash; + a8::XTimerWp game_over_timer; #ifdef DEBUG std::map debug_params; #endif