diff --git a/server/gameserver/pbutils.cc b/server/gameserver/pbutils.cc index d9c1ff73..6191047b 100644 --- a/server/gameserver/pbutils.cc +++ b/server/gameserver/pbutils.cc @@ -852,12 +852,13 @@ void Human::FillMFTeamData(Human* hum, cs::MFTeamData* team_data, bool is_game_o team_data->set_dead(dead); #endif - if (is_game_over || room->GetGasData().GetGasMode() == GasInactive) { + bool need_sync = true; + if (is_game_over || room->GetGasData().GetGasMode() == GasInactive || need_sync) { team_data->set_name(name); } - if (room->GetGasData().GetGasMode() != GasInactive && - room->GetFrameNo() - room->GetBattleStartFrameNo() < 4) { + if ((room->GetGasData().GetGasMode() != GasInactive && + room->GetFrameNo() - room->GetBattleStartFrameNo() < 4) || need_sync) { team_data->set_name(name); team_data->set_disconnected(socket_handle == 0); } @@ -882,7 +883,8 @@ void Human::FillMFTeamData(Human* hum, cs::MFTeamData* team_data, bool is_game_o team_data->set_sex(sex); } if (room->GetGasData().GetGasMode() == GasInactive || - room->GetFrameNo() - room->GetBattleStartFrameNo() < 4) { + room->GetFrameNo() - room->GetBattleStartFrameNo() < 4 || + need_sync) { team_data->set_user_data(user_data); } #if 0