one more old savefile to keep

This commit is contained in:
minjaesong
2021-10-02 23:21:16 +09:00
parent 376a40531f
commit abb46f410a

View File

@@ -368,17 +368,20 @@ open class IngameInstance(val batch: SpriteBatch) : Screen {
fun makeSavegameBackupCopy() { fun makeSavegameBackupCopy() {
try { try {
// do not overwrite clean .2 with dirty .1 // do not overwrite clean .2 with dirty .1
val file2 = File(App.defaultSaveDir, INGAME.savegameNickname+".2") val file2 = File(App.defaultSaveDir, INGAME.savegameNickname+".3")
val file1 = File(App.defaultSaveDir, INGAME.savegameNickname+".1") val file1 = File(App.defaultSaveDir, INGAME.savegameNickname+".2")
val flags2 = FileInputStream(file2).let { it.skip(49L); val r = it.read(); it.close(); r } val flags2 = FileInputStream(file2).let { it.skip(49L); val r = it.read(); it.close(); r }
val flags1 = FileInputStream(file1).let { it.skip(49L); val r = it.read(); it.close(); r } val flags1 = FileInputStream(file1).let { it.skip(49L); val r = it.read(); it.close(); r }
if (!(flags2 == 0 && flags1 != 0) || !file2.exists()) file1.copyTo(file2, true)
if (!(flags2 == 0 && flags1 != 0) || !file2.exists()) { } catch (e: NoSuchFileException) {} catch (e: FileNotFoundException) {}
file1.copyTo(file2, true) try {
} // do not overwrite clean .2 with dirty .1
} catch (e: NoSuchFileException) { val file2 = File(App.defaultSaveDir, INGAME.savegameNickname+".2")
} catch (e: FileNotFoundException) {} val file1 = File(App.defaultSaveDir, INGAME.savegameNickname+".1")
val flags2 = FileInputStream(file2).let { it.skip(49L); val r = it.read(); it.close(); r }
val flags1 = FileInputStream(file1).let { it.skip(49L); val r = it.read(); it.close(); r }
if (!(flags2 == 0 && flags1 != 0) || !file2.exists()) file1.copyTo(file2, true)
} catch (e: NoSuchFileException) {} catch (e: FileNotFoundException) {}
try { try {
File(App.defaultSaveDir, INGAME.savegameNickname).copyTo( File(App.defaultSaveDir, INGAME.savegameNickname).copyTo(
File(App.defaultSaveDir, INGAME.savegameNickname+".1"), // don't use .bak as it's used by the savecracker File(App.defaultSaveDir, INGAME.savegameNickname+".1"), // don't use .bak as it's used by the savecracker