mirror of
https://github.com/ZDoom/gzdoom-gles.git
synced 2025-02-20 18:42:17 +00:00
- Now the quicksave slot must be selected explicitly like in original Doom.
This commit is contained in:
parent
7b8754c740
commit
9639956fa4
4 changed files with 12 additions and 5 deletions
|
@ -164,6 +164,7 @@ bool sendsave; // send a save event next tic
|
|||
bool sendturn180; // [RH] send a 180 degree turn next tic
|
||||
bool usergame; // ok to save / end game
|
||||
bool insave; // Game is saving - used to block exit commands
|
||||
bool doquicksave = false;
|
||||
|
||||
bool timingdemo; // if true, exit with report on completion
|
||||
bool nodrawers; // for comparative timing purposes
|
||||
|
@ -1082,12 +1083,13 @@ void G_Ticker ()
|
|||
G_DoLoadGame ();
|
||||
break;
|
||||
case ga_savegame:
|
||||
G_DoSaveGame (true, false, savegamefile, savedescription);
|
||||
G_DoSaveGame (doquicksave, false, savegamefile, savedescription);
|
||||
gameaction = ga_nothing;
|
||||
savegamefile = "";
|
||||
savedescription = "";
|
||||
break;
|
||||
case ga_autosave:
|
||||
doquicksave = false;
|
||||
G_DoAutoSave ();
|
||||
gameaction = ga_nothing;
|
||||
break;
|
||||
|
@ -2066,7 +2068,7 @@ void G_DoAutoSave ()
|
|||
UCVarValue num;
|
||||
const char *readableTime;
|
||||
int count = autosavecount != 0 ? autosavecount : 1;
|
||||
|
||||
|
||||
if (nextautosave == -1)
|
||||
{
|
||||
nextautosave = (autosavenum + 1) % count;
|
||||
|
@ -2089,7 +2091,7 @@ void G_DoAutoSave ()
|
|||
|
||||
readableTime = myasctime ();
|
||||
description.Format("Autosave %s", readableTime);
|
||||
G_DoSaveGame (false, false, file, description);
|
||||
G_DoSaveGame (doquicksave, false, file, description);
|
||||
}
|
||||
|
||||
void G_DoQuickSave ()
|
||||
|
@ -2100,7 +2102,7 @@ void G_DoQuickSave ()
|
|||
UCVarValue num;
|
||||
const char *readableTime;
|
||||
int count = quicksaverotationcount != 0 ? quicksaverotationcount : 1;
|
||||
|
||||
|
||||
if (quicksavenum < 0)
|
||||
{
|
||||
lastquicksave = 0;
|
||||
|
@ -2117,7 +2119,7 @@ void G_DoQuickSave ()
|
|||
|
||||
readableTime = myasctime ();
|
||||
description.Format("Quicksave %s", readableTime);
|
||||
G_DoSaveGame (true, true, file, description);
|
||||
G_DoSaveGame (doquicksave, true, file, description);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -38,6 +38,7 @@ class AActor;
|
|||
//
|
||||
// GAME
|
||||
//
|
||||
|
||||
void G_DeathMatchSpawnPlayer (int playernum);
|
||||
|
||||
struct FPlayerStart *G_PickPlayerStart (int playernum, int flags = 0);
|
||||
|
@ -102,6 +103,7 @@ void G_AddViewAngle (int yaw, bool mouse = false);
|
|||
|
||||
extern const AActor *SendItemUse, *SendItemDrop;
|
||||
extern int SendItemDropAmount;
|
||||
extern bool doquicksave;
|
||||
|
||||
|
||||
#endif
|
||||
|
|
|
@ -912,6 +912,7 @@ CCMD (menu_load)
|
|||
|
||||
CCMD (menu_save)
|
||||
{ // F2
|
||||
doquicksave = false;
|
||||
M_StartControlPanel (true);
|
||||
M_SetMenu(NAME_Savegamemenu, -1);
|
||||
}
|
||||
|
|
|
@ -180,6 +180,8 @@ CCMD (quicksave)
|
|||
if (gamestate != GS_LEVEL)
|
||||
return;
|
||||
|
||||
doquicksave = true;
|
||||
|
||||
// If the quick save rotation is enabled, it handles the save slot.
|
||||
if (quicksaverotation)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue