| 1151 | |
| 1152 | |
| 1153 | int16 cFodder::Recruit_Show() { |
| 1154 | |
| 1155 | Map_Load(); |
| 1156 | Map_Load_Sprites(); |
| 1157 | |
| 1158 | Phase_Soldiers_Count(); |
| 1159 | mGame_Data.Soldier_Sort(); |
| 1160 | Phase_Soldiers_Prepare(true); |
| 1161 | Phase_Soldiers_AttachToSprites(); |
| 1162 | |
| 1163 | WindowTitleSet(false); |
| 1164 | |
| 1165 | if (!mStartParams->mDisableSound) |
| 1166 | mSound->Music_Play(0); |
| 1167 | |
| 1168 | // Retail / Custom set show the Recruitment Hill |
| 1169 | if (mVersionCurrent->isRetail() || mVersionCurrent->isPCFormat() || mVersionCurrent->isRandom() || mCustom_Mode == eCustomMode_Set) { |
| 1170 | |
| 1171 | // Recruit Screen |
| 1172 | if (Recruit_Loop()) |
| 1173 | return -1; |
| 1174 | |
| 1175 | Recruit_CheckLoadSaveButtons(); |
| 1176 | |
| 1177 | // Did we just load/save a game? |
| 1178 | if (mRecruit_Button_Load_Pressed || mRecruit_Button_Save_Pressed) { |
| 1179 | mRecruit_Mission_Restarting = true; |
| 1180 | mGame_Data.mMission_Recruitment = -1; |
| 1181 | mPhase_Aborted = true; |
| 1182 | return -3; |
| 1183 | } |
| 1184 | } |
| 1185 | else { |
| 1186 | |
| 1187 | // Amiga demos have a menu |
| 1188 | if (mVersionCurrent->mPlatform == ePlatform::Amiga) { |
| 1189 | |
| 1190 | // But not custom games |
| 1191 | if (mCustom_Mode == eCustomMode_None) { |
| 1192 | |
| 1193 | if (!mVersionCurrent->isAmigaTheOne()) { |
| 1194 | if (Demo_Amiga_ShowMenu()) |
| 1195 | return -1; |
| 1196 | } |
| 1197 | } |
| 1198 | } |
| 1199 | } |
| 1200 | |
| 1201 | mRecruit_Mission_Restarting = false; |
| 1202 | GameData_Backup(); |
| 1203 | |
| 1204 | // Retail or Custom Mode |
| 1205 | if (mVersionCurrent->isRetail() || |
| 1206 | mCustom_Mode != eCustomMode_None) { |
| 1207 | Map_Load(); |
| 1208 | |
| 1209 | // Show the intro for the briefing screen |
| 1210 | Mission_Intro_Play(false, mMapLoaded->getTileType()); |
nothing calls this directly
no test coverage detected