From fc558fafe5ceb8bb80c3e9d2d0832ac07386bf0e Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 28 Dec 2023 14:06:19 +0800 Subject: [PATCH] 1 --- server/gameserver/pbutils.cc | 6 ++++++ server/gameserver/room.cc | 8 ++++++-- server/gameserver/room.h | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/server/gameserver/pbutils.cc b/server/gameserver/pbutils.cc index 7d1dffd2..d49d7c6d 100644 --- a/server/gameserver/pbutils.cc +++ b/server/gameserver/pbutils.cc @@ -2313,6 +2313,12 @@ int Room::InitWithMobaBattle(long ip_saddr, int socket_handle, std::shared_ptrGetMemberNum(); ii < MAX_TEAM_NUM; ++ii) { + + } + } return 0; } diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index fdeb9643..5d8bd8e5 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -462,7 +462,7 @@ void Room::ShowAndroid(Human* target, int num) } } -void Room::CreateAndroid(int robot_num) +void Room::CreateAndroid(int robot_num, std::shared_ptr team) { for (int i = 0; i < robot_num; ++i) { if (human_hash_.size() >= GetRoomMaxPlayerNum()) { @@ -499,7 +499,11 @@ void Room::CreateAndroid(int robot_num) hum->Initialize(); AddToEntityHash(hum); AddToHumanHash(hum); - MatchTeam(hum); + if (team) { + team->AddMember(hum); + } else { + MatchTeam(hum); + } ++alive_count_; alive_count_chged_frameno_ = GetFrameNo(); ++PerfMonitor::Instance()->alive_count; diff --git a/server/gameserver/room.h b/server/gameserver/room.h index f10ad338..2445ebb8 100644 --- a/server/gameserver/room.h +++ b/server/gameserver/room.h @@ -283,11 +283,11 @@ public: int GenShotUniid() { return ++current_shot_uniid_; } int InitWithMobaBattle(long ip_saddr, int socket_handle, std::shared_ptr msg, std::shared_ptr p); + void CreateAndroid(int android_num, std::shared_ptr team = nullptr); private: void ShuaAndroid(); void ShowAndroid(Human* target, int num); - void CreateAndroid(int android_num); void UpdateGas(); void UpdateGasInactive(); void UpdateGasInactivePvp();