Add setting for long-term autosaves

A second set of autosaves for whenever the main set wraps around to 0
This commit is contained in:
Jonathan G Rennison
2023-07-09 09:44:09 +01:00
parent 688dcc1d74
commit c6c69fa3da
7 changed files with 39 additions and 4 deletions

View File

@@ -2143,13 +2143,23 @@ FiosNumberedSaveName &GetAutoSaveFiosNumberedSaveName()
return _autosave_ctr;
}
FiosNumberedSaveName &GetLongTermAutoSaveFiosNumberedSaveName()
{
static FiosNumberedSaveName _autosave_lt_ctr("ltautosave");
return _autosave_lt_ctr;
}
/**
* Create an autosave. The default name is "autosave#.sav". However with
* the setting 'keep_all_autosave' the name defaults to company-name + date
*/
static void DoAutosave()
{
DoAutoOrNetsave(GetAutoSaveFiosNumberedSaveName(), true);
FiosNumberedSaveName *lt_counter = nullptr;
if (_settings_client.gui.max_num_autosaves > 0) {
lt_counter = &GetLongTermAutoSaveFiosNumberedSaveName();
}
DoAutoOrNetsave(GetAutoSaveFiosNumberedSaveName(), true, lt_counter);
}
/**