diff --git a/assets/config_menu/general.rml b/assets/config_menu/general.rml index 4ca6931..0d60f2e 100644 --- a/assets/config_menu/general.rml +++ b/assets/config_menu/general.rml @@ -179,9 +179,10 @@ This setting does not affect keyboard input.

- Enables or disables the autosave feature. + Turns on autosaving and prevents owl saves from being deleted on load. If an owl save exists when an autosave is made, the owl save will get replaced.
- If any owl save exists when an autosave is made, the owl save will get replaced. +
+ If autosaving is disabled, existing autosaves will be deleted when loaded.

diff --git a/patches/autosaving.c b/patches/autosaving.c index 423086a..98d4f17 100644 --- a/patches/autosaving.c +++ b/patches/autosaving.c @@ -88,8 +88,8 @@ void func_80147314(SramContext* sramCtx, s32 fileNum) { s32 save_type = gSaveContext.save.isOwlSave; gSaveContext.save.isOwlSave = false; - // @recomp Check if this owl save was actually an autosave and don't clear it if so. - if (save_type != SAVE_TYPE_AUTOSAVE) { + // @recomp Prevent owl save/autosave deletion if autosaving is enabled. + if (!recomp_autosave_enabled()) { gSaveContext.save.saveInfo.playerData.newf[0] = '\0'; gSaveContext.save.saveInfo.playerData.newf[1] = '\0'; gSaveContext.save.saveInfo.playerData.newf[2] = '\0';