Backup save when saving

This commit is contained in:
Konrad Borowski
2023-07-26 17:52:34 +02:00
parent 38ea210de7
commit c4ef959e47

View File

@@ -285,7 +285,9 @@ class PokemonLoadScreen
def try_load_backup(file_path) def try_load_backup(file_path)
if File.file?(file_path + ".bak") if File.file?(file_path + ".bak")
pbMessage(_INTL("The save file is corrupt. A backup will be loaded.")) pbMessage(_INTL("The save file is corrupt. A backup will be loaded."))
save_data = load_save_file(file_path + ".bak") file_copy(file_path, SaveData.get_backup_file_path)
File.rename(file_path + '.bak', file_path)
save_data = load_save_file(file_path)
else else
self.prompt_save_deletion(file_path) self.prompt_save_deletion(file_path)
return {} return {}
@@ -693,6 +695,9 @@ module Game
$Trainer.save_slot = slot unless auto $Trainer.save_slot = slot unless auto
$Trainer.last_time_saved = Time.now $Trainer.last_time_saved = Time.now
begin begin
if File.exists?(file_path)
file_copy(file_path, file_path + '.bak')
end
SaveData.save_to_file(file_path) SaveData.save_to_file(file_path)
Graphics.frame_reset Graphics.frame_reset
rescue IOError, SystemCallError rescue IOError, SystemCallError