From ae8cb0487d338ac5d35639ce37b8f933f5aca725 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Mon, 6 May 2019 11:26:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BB=84=E9=98=9F=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/gameserver/framemaker.cc | 7 ------- server/gameserver/human.cc | 8 ++++++++ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/server/gameserver/framemaker.cc b/server/gameserver/framemaker.cc index 36a8b93..44e22a5 100644 --- a/server/gameserver/framemaker.cc +++ b/server/gameserver/framemaker.cc @@ -8,13 +8,6 @@ cs::SMUpdate* FrameMaker::MakeUpdateMsg(const Human* hum) { cs::SMUpdate* msg = new cs::SMUpdate; { - if (hum->team_members) { - for (auto& itr : *hum->team_members) { - if (itr != hum) { - itr->FillMFTeamData(msg->add_team_data()); - } - } - } Room* room = hum->room; if (room->gas_data.gas_mode == GasJump) { cs::MFPlane* p = msg->mutable_plane(); diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index 40530bf..35449bd 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -1215,6 +1215,14 @@ void Human::SendUpdateMsg() bool refreshed_view = false; std::set view_objects; for (Human* observer : observers_) { + msg->clear_team_data(); + if (observer->team_members) { + for (auto& itr : *observer->team_members) { + if (itr != observer) { + itr->FillMFTeamData(msg->add_team_data()); + } + } + } if (observer != this && !observer->follow_synced_active_player) { msg->set_active_player_id(entity_uniid); FillMFActivePlayerData(msg->mutable_active_player_data());