feat(achievements): spawn confetti when all achievements are obtained

This commit is contained in:
2026-01-31 20:37:02 +01:00
parent 3daa8b5bcc
commit 41c3238b3b
2 changed files with 13 additions and 0 deletions

View File

@@ -51,12 +51,19 @@ export const useAchievementsStore = defineStore("achievements", () => {
storage.value.advancement.languages.push(locale.value);
}
const confetti = useConfetti();
const unlock = (name: Achievement) => {
if (storage.value.unlocked.includes(name)) {
return false;
}
storage.value.unlocked.push(name);
if (storage.value.unlocked.length === ACHIEVEMENTS.length) {
confetti.spawn();
}
return true;
};

View File

@@ -88,6 +88,12 @@ export const useAchievementsScreen = defineStore("achievementsScreen", {
this.intro.itemOffsets[i] = -ACHIEVEMENTS_LINE_HEIGHT;
}
const achievements = useAchievementsStore();
if (achievements.allObtained) {
const confetti = useConfetti();
confetti.spawn();
}
const tl = gsap.timeline({
onComplete: () => {
this.isIntro = false;