feat: P15 ending gallery, chapter recap, visited tracking, save system v6

This commit is contained in:
2026-06-09 17:49:07 +08:00
parent 47d6ce50fe
commit 9297117544
14 changed files with 517 additions and 48 deletions

View File

@@ -26,6 +26,11 @@ export function useGameEngine(videoEls: () => [HTMLVideoElement | null, HTMLVide
await saveSystem.markWatched(sceneId)
})
engine.setMarkVisitedHandler(async (sceneId) => {
store.addVisitedSceneId(sceneId)
await saveSystem.markVisited(sceneId)
})
engine.achievementSystem.setUnlockCallback(async (ach) => {
await saveSystem.unlockAchievement(ach.id)
store.addUnlockedAchievement(ach.id)
@@ -119,6 +124,11 @@ export function useGameEngine(videoEls: () => [HTMLVideoElement | null, HTMLVide
const achieved = await saveSystem.getUnlockedAchievements()
store.setUnlockedAchievementIds(achieved)
engine.achievementSystem.init(data.achievements || [], achieved)
store.setEndings(data.endings || [])
const visitedIds = await saveSystem.getVisitedSceneIds()
store.setVisitedSceneIds(visitedIds)
}
function ensureVideo() {