diff --git a/src/game/g_menu.pas b/src/game/g_menu.pas
index 85334b3bf14b8331ed5c2bc114266c667a0db93f..a84251949474de22ad1a163b41c767f5eb2d52e0 100644 (file)
--- a/src/game/g_menu.pas
+++ b/src/game/g_menu.pas
procedure g_Menu_AskLanguage();
procedure g_Menu_Show_SaveMenu();
-procedure g_Menu_Show_LoadMenu();
+procedure g_Menu_Show_LoadMenu(standalone: Boolean=false);
procedure g_Menu_Show_GameSetGame();
procedure g_Menu_Show_OptionsVideo();
procedure g_Menu_Show_OptionsSound();
begin
Enabled := True;
if (gGameSettings.GameType = GT_SINGLE) and
- ((gPlayer1 = nil) or (not gPlayer1.Live)) and
- ((gPlayer2 = nil) or (not gPlayer2.Live)) then
+ ((gPlayer1 = nil) or (not gPlayer1.alive)) and
+ ((gPlayer2 = nil) or (not gPlayer2.alive)) then
Enabled := False; // Îäèí èç èãðîêîâ ïîãèá â ñèíãëå
if not gGameOn then
Enabled := False; // Çàïðåòèòü ñîõðàíåíèå â èíòåðìèññèè (íå ðåàëèçîâàíî)
g_Sound_PlayEx('MENU_OPEN');
end;
-procedure g_Menu_Show_LoadMenu();
+procedure g_Menu_Show_LoadMenu (standalone: Boolean=false);
begin
+ if (g_ActiveWindow <> nil) and (g_ActiveWindow.name = 'LoadMenu') then exit; // nothing to do
if gGameSettings.GameType = GT_SINGLE then
- g_GUI_ShowWindow('GameSingleMenu')
+ begin
+ if not standalone then g_GUI_ShowWindow('GameSingleMenu')
+ end
else
begin
- if g_Game_IsClient then
- Exit
- else
- if g_Game_IsNet then
- Exit
- else
- g_GUI_ShowWindow('GameCustomMenu');
+ if g_Game_IsClient then exit;
+ if g_Game_IsNet then exit;
+ if not standalone then g_GUI_ShowWindow('GameCustomMenu');
end;
g_GUI_ShowWindow('LoadMenu');
g_Sound_PlayEx('MENU_OPEN');