|
|
|
@ -1361,15 +1361,18 @@ void SwitchToMode(SwitchMode new_mode)
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case SM_SAVE_GAME: // Save game.
|
|
|
|
|
case SM_SAVE_GAME: { // Save game.
|
|
|
|
|
/* Make network saved games on pause compatible to singleplayer mode */
|
|
|
|
|
if (SaveOrLoad(_file_to_saveload.name, SLO_SAVE, DFT_GAME_FILE, NO_DIRECTORY) != SL_OK) {
|
|
|
|
|
SaveModeFlags flags = SMF_NONE;
|
|
|
|
|
if (_game_mode == GM_EDITOR) flags |= SMF_SCENARIO;
|
|
|
|
|
if (SaveOrLoad(_file_to_saveload.name, SLO_SAVE, DFT_GAME_FILE, NO_DIRECTORY, true, flags) != SL_OK) {
|
|
|
|
|
SetDParamStr(0, GetSaveLoadErrorString());
|
|
|
|
|
ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_ERROR);
|
|
|
|
|
} else {
|
|
|
|
|
DeleteWindowById(WC_SAVELOAD, 0);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case SM_SAVE_HEIGHTMAP: // Save heightmap.
|
|
|
|
|
MakeHeightmapScreenshot(_file_to_saveload.name.c_str());
|
|
|
|
|