I have the following problems with autosave, assuming "Take screenshot when saving" is checked:
I understand that it's probably impossible to get rid of the short freeze, but could we maybe add an option not to take screenshots during autosaves (but keep them for regular saves)? And if so let the SavesList menu specify an "Autosave texture"?
Thanks!
It looks like you're new here. If you want to get involved, click one of these buttons!
Comments
The freeze is necessary in order to take the screenshot. Saves without screenshots can be assigned an "Empty slot texture" in the SavesList element.
You can make screenshots dependent on the save time by hooking into the OnBeforeSaving custom event:
Cool, while this solves the flickering, it brings up two new issues:
EventManager.OnFinishSaving += (SaveFile saveFile) => KickStarter.settingsManager.takeSaveScreenshots = true;
Any ideas?
I'm rather stuck with this and worst case I have to go back to the old list of just showing labels.
Thanks
1) Call GatherSaveFiles in your "OnFinishSaving" event:
2) Yes, though I'll conider your request for AC menus.
On 2), this wouldn't be possible in the form of simply adding a texture field to the SavesList element - since the element itself is not aware of what "type" of save is being listed.
What you can do instead is create a new "SaveFileHandler" interface (the script that deals with save file handling, including screenshots) to supply a separate texture instead of a screenshot when an autosave is requested.
See the Manual's "Custom save formats and handling" chapter. You're currently using the "SaveFileHandler_SystemFile" class, which you can duplicate, rename, and amend to suit your needs.
In your modified copy, you'd replace the code:
with:
Where you've placed your texture in a Resources folder and named it "AutoSaveTexture".
Thanks, I'll try it out!
I'm sorry for going a bit off topic here, but talking about quick saving, is there a way to display an icon or any menu while auto saving is in progress?
You can hook into the OnBeforeSaving and OnAfterSaving custom events, checking to see if the provided "saveID" parameter is 0, which will be the case when autosaving. See the Manual's "Save scripting" chapter for more on this.
Here's an example, which turns on/off a Menu named "SaveIconMenu" during an autosave. Bear in mind that this Menu's Appear type should be set to Manual.