| 1058 | } |
| 1059 | |
| 1060 | void 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()); |
no test coverage detected