From 84ec786f5ffb47eeb8d58fa27f5d86e0964e2779 Mon Sep 17 00:00:00 2001 From: Daniel Bulant Date: Tue, 31 Aug 2021 15:54:10 +0200 Subject: [PATCH] better progress save --- src/pages/dialog.svelte | 2 +- src/stores/gameActive.js | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pages/dialog.svelte b/src/pages/dialog.svelte index c70a6a7..3469599 100644 --- a/src/pages/dialog.svelte +++ b/src/pages/dialog.svelte @@ -78,7 +78,7 @@ }, 300); } console.log("selected", d); - if(!d.flags || !d.flags.includes("nosave")) localStorage.setItem("dialog-page", next); + if(!d.flags || !d.flags.includes("nosave")) localStorage.setItem("dialog-page", dialog[next].name); if(d.chapter) { if(!chaptersDone.includes(d.chapter)) { chaptersDone.push(d.chapter); diff --git a/src/stores/gameActive.js b/src/stores/gameActive.js index 4fc229f..bc4c366 100644 --- a/src/stores/gameActive.js +++ b/src/stores/gameActive.js @@ -1,8 +1,11 @@ import { writable } from "svelte/store"; +import { dialog } from "./dialog"; export const gameActive = writable(!!parseInt(localStorage.getItem("game-active"))); gameActive.subscribe(t => { localStorage.setItem("game-active", t ? 1 : 0); }); -export const page = writable(parseInt(localStorage.getItem("dialog-page")) || 0); +const startPage = localStorage.getItem("dialog-page"); +const startPageIndex = dialog.findIndex(t => t.name === startPage); +export const page = writable(startPageIndex !== -1 ? startPageIndex : 0); export const menuActive = writable(false); \ No newline at end of file