From 8df1acf4466b53dfd7951eec6d6f08bef83d7093 Mon Sep 17 00:00:00 2001 From: Ethan O'Brien Date: Sat, 5 Apr 2025 21:50:46 -0500 Subject: [PATCH] Fix up save state interval logic --- data/src/emulator.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/data/src/emulator.js b/data/src/emulator.js index 644dd3e..0b08ad6 100644 --- a/data/src/emulator.js +++ b/data/src/emulator.js @@ -3926,14 +3926,17 @@ class EmulatorJS { } } else if (option === "save-save-interval") { value = parseInt(value); - if (this.saveSaveInterval !== null) { + if (this.saveSaveInterval && this.saveSaveInterval !== null) { clearInterval(this.saveSaveInterval); + this.saveSaveInterval = null; } // Disabled if (value === 0 || isNaN(value)) return; - this.gameManager.saveSaveFiles(); + if (this.started) this.gameManager.saveSaveFiles(); if (this.debug) console.log("Saving every", value * 1000, "miliseconds"); - setInterval(() => this.gameManager.saveSaveFiles(), value * 1000); + this.saveSaveInterval = setInterval(() => { + if (this.started) this.gameManager.saveSaveFiles(); + }, value * 1000); } } menuOptionChanged(option, value) {