From a58f0de58738f81f98976bcc3206d74b1f996c86 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 4 Apr 2023 18:07:22 +0800 Subject: [PATCH] fix team --- server/gameserver/room.cc | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index d27589ae..daced23f 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -1518,6 +1518,26 @@ void Room::CombineTeam() if (need_combine_teams.size() < 2) { return; } + if (total_count == 3) { + int del_team_id = 0; + for (auto& pair : need_combine_teams) { + if (pair.first != first_team_id) { + del_team_id = pair.first; + break; + } + } + if (del_team_id != 0) { + auto itr = need_combine_teams.find(del_team_id); + if (itr != need_combine_teams.end()) { + total_count -= itr->second->GetTeamNum(); + need_combine_teams.erase(itr); + break; + } + } + if (total_count <= 0) { + abort(); + } + } size_t first_team_num = 4; switch (total_count) {