chore: sync latest changes

This commit is contained in:
2026-06-09 17:21:54 +08:00
parent bca137535b
commit 451c6ea025
12 changed files with 503 additions and 28 deletions

View File

@@ -26,6 +26,11 @@ export function useGameEngine(videoEls: () => [HTMLVideoElement | null, HTMLVide
await saveSystem.markWatched(sceneId)
})
engine.achievementSystem.setUnlockCallback(async (ach) => {
await saveSystem.unlockAchievement(ach.id)
store.addUnlockedAchievement(ach.id)
})
engine.on('sceneChange', (scene) => {
store.setScene(scene)
store.clearChoices()
@@ -106,8 +111,14 @@ export function useGameEngine(videoEls: () => [HTMLVideoElement | null, HTMLVide
engine.sceneManager.load(data)
engine.stateManager.init(data.variables)
store.setChapters(data.chapters || [])
store.setAchievementDefs(data.achievements || [])
const unlocked = await saveSystem.getUnlockedChapters()
store.setUnlockedChapters(unlocked)
const achieved = await saveSystem.getUnlockedAchievements()
store.setUnlockedAchievementIds(achieved)
engine.achievementSystem.init(data.achievements || [], achieved)
}
function ensureVideo() {