MCPcopy Create free account
hub / github.com/ddnet/ddnet / ProcessSaveTeam

Method ProcessSaveTeam

src/game/server/teams.cpp:1060–1180  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1058}
1059
1060void CGameTeams::ProcessSaveTeam()
1061{
1062 for(int Team = 0; Team < NUM_DDRACE_TEAMS; Team++)
1063 {
1064 if(m_apSaveTeamResult[Team] == nullptr || !m_apSaveTeamResult[Team]->m_Completed)
1065 continue;
1066
1067 int TeamSize = m_apSaveTeamResult[Team]->m_SavedTeam.GetMembersCount();
1068 int State = -1;
1069
1070 switch(m_apSaveTeamResult[Team]->m_Status)
1071 {
1072 case CScoreSaveResult::SAVE_FALLBACKFILE:
1073 State = SAVESTATE_FALLBACKFILE;
1074 break;
1075 case CScoreSaveResult::SAVE_WARNING:
1076 State = SAVESTATE_WARNING;
1077 break;
1078 case CScoreSaveResult::SAVE_SUCCESS:
1079 State = SAVESTATE_DONE;
1080 break;
1081 case CScoreSaveResult::SAVE_FAILED:
1082 State = SAVESTATE_ERROR;
1083 break;
1084 case CScoreSaveResult::LOAD_FAILED:
1085 case CScoreSaveResult::LOAD_SUCCESS:
1086 State = -1;
1087 break;
1088 }
1089
1090 if(State != -1)
1091 {
1092 GameServer()->SendSaveCode(
1093 Team,
1094 TeamSize,
1095 State,
1096 (State == SAVESTATE_DONE) ? "" : m_apSaveTeamResult[Team]->m_aMessage,
1097 m_apSaveTeamResult[Team]->m_aRequestingPlayer,
1098 m_apSaveTeamResult[Team]->m_aServer,
1099 m_apSaveTeamResult[Team]->m_aGeneratedCode,
1100 m_apSaveTeamResult[Team]->m_aCode);
1101 }
1102
1103 if(m_apSaveTeamResult[Team]->m_aBroadcast[0] != '\0')
1104 GameServer()->SendBroadcast(m_apSaveTeamResult[Team]->m_aBroadcast, -1);
1105
1106 switch(m_apSaveTeamResult[Team]->m_Status)
1107 {
1108 case CScoreSaveResult::SAVE_FALLBACKFILE:
1109 case CScoreSaveResult::SAVE_WARNING:
1110 case CScoreSaveResult::SAVE_SUCCESS:
1111 {
1112 if(GameServer()->TeeHistorianActive())
1113 {
1114 GameServer()->TeeHistorian()->RecordTeamSaveSuccess(
1115 Team,
1116 m_apSaveTeamResult[Team]->m_SaveId,
1117 m_apSaveTeamResult[Team]->m_SavedTeam.GetString());

Callers 1

TickMethod · 0.80

Calls 15

FormatUuidFunction · 0.85
dbg_msgFunction · 0.85
GetMembersCountMethod · 0.80
SendSaveCodeMethod · 0.80
SendBroadcastMethod · 0.80
TeeHistorianActiveMethod · 0.80
RecordTeamSaveSuccessMethod · 0.80
IsHookingMethod · 0.80
GetClientIdMethod · 0.80
SendChatTargetMethod · 0.80
RecordTeamSaveFailureMethod · 0.80
RecordTeamLoadSuccessMethod · 0.80

Tested by

no test coverage detected