diff --git a/src/globalState.js b/src/globalState.js index 07067fc7..e0c93b9e 100644 --- a/src/globalState.js +++ b/src/globalState.js @@ -131,12 +131,20 @@ console.info = (...args) => { info.apply(console, args) } -window.addEventListener('unload', (e) => { - if (window.singlePlayerServer) { - for (const player of window.singlePlayerServer.players) { - player.save() - } +const savePlayers = () => { + if (!window.singlePlayerServer) return + for (const player of window.singlePlayerServer.players) { + player.save() } +} + +setInterval(() => { + savePlayers() + // todo investigate unload failures instead +}, 1000) + +window.addEventListener('unload', (e) => { + savePlayers() }) // todo move from global state