chore: sync latest changes
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { defineStore } from 'pinia'
|
||||
import { ref, shallowRef } from 'vue'
|
||||
import type { SceneNode, Choice, QTEDefinition, Hotspot, ChapterInfo } from '@engine/types'
|
||||
import type { SceneNode, Choice, QTEDefinition, Hotspot, ChapterInfo, AchievementDef } from '@engine/types'
|
||||
|
||||
export interface SlotInfo {
|
||||
slot: number
|
||||
@@ -29,6 +29,10 @@ export const useGameStore = defineStore('game', () => {
|
||||
const showChapterSelect = ref(false)
|
||||
const chapters = ref<ChapterInfo[]>([])
|
||||
const unlockedChapterIds = ref<Set<string>>(new Set())
|
||||
const showAchievements = ref(false)
|
||||
const achievementDefs = ref<AchievementDef[]>([])
|
||||
const unlockedAchievementIds = ref<Set<string>>(new Set())
|
||||
const toastAchievementId = ref('')
|
||||
|
||||
function setScene(scene: SceneNode) {
|
||||
currentScene.value = scene
|
||||
@@ -126,6 +130,28 @@ export const useGameStore = defineStore('game', () => {
|
||||
showChapterSelect.value = val
|
||||
}
|
||||
|
||||
function setShowAchievements(val: boolean) {
|
||||
showAchievements.value = val
|
||||
}
|
||||
|
||||
function setAchievementDefs(list: AchievementDef[]) {
|
||||
achievementDefs.value = list
|
||||
}
|
||||
|
||||
function setUnlockedAchievementIds(ids: string[]) {
|
||||
unlockedAchievementIds.value = new Set(ids)
|
||||
}
|
||||
|
||||
function addUnlockedAchievement(id: string) {
|
||||
unlockedAchievementIds.value.add(id)
|
||||
unlockedAchievementIds.value = new Set(unlockedAchievementIds.value)
|
||||
toastAchievementId.value = id
|
||||
}
|
||||
|
||||
function clearToastAchievement() {
|
||||
toastAchievementId.value = ''
|
||||
}
|
||||
|
||||
function dump() {
|
||||
console.group('GameStore')
|
||||
console.log('currentScene:', currentScene.value?.id)
|
||||
@@ -142,13 +168,16 @@ export const useGameStore = defineStore('game', () => {
|
||||
currentScene, choices, gameEnded, timerTotal, timerRemaining, saves,
|
||||
qteActive, qteDef, qteTotal, qteRemaining, qteResult, videoTime,
|
||||
hotspots, isImageScene, showChapterSelect, chapters, unlockedChapterIds,
|
||||
inputMode,
|
||||
inputMode, showAchievements, achievementDefs, unlockedAchievementIds,
|
||||
toastAchievementId,
|
||||
setScene, setChoices, clearChoices, setGameEnded,
|
||||
setTimer, clearTimer, setSaves,
|
||||
showQTE, updateQTE, resolveQTE, clearQTE, setVideoTime,
|
||||
setHotspots, clearHotspots, setIsImageScene,
|
||||
setInputMode,
|
||||
setChapters, setUnlockedChapters, addUnlockedChapter, setShowChapterSelect,
|
||||
setShowAchievements, setAchievementDefs, setUnlockedAchievementIds,
|
||||
addUnlockedAchievement, clearToastAchievement,
|
||||
dump,
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user