CHAR ANIMATIONS COMPLETE - 52 frames generated

Session: 11hr marathon (Jan 8, 2026)
Assets: 52 animation frames total
Progress: 36% to 54%

Kai: 20 frames (idle 4, walk 6, dig 5, swing 5)
Ana: 10 frames (idle 4, walk 6)
Gronk: 10 frames (idle 4, walk 6)
Susi: 12 frames (idle 4, run 6, bark 2)

Demo Status: 157/292 assets (54%)
Remaining: 135 assets

Files updated:
- TASK_TRACKER.md
- PRODUCTION_CHECKLIST.md
- 64 new PNG assets
- Susi reference updated
This commit is contained in:
2026-01-08 04:03:10 +01:00
parent b33d959b81
commit d5c7c3ee67
11 changed files with 2258 additions and 15 deletions

View File

@@ -10,8 +10,12 @@
* - Progress tracking & rewards
* - Dialogue system integration
* - VFX triggers
*
* v2.1 UPDATE: Now loads quests from QuestDataLoader (Quest Manifest v2.0 compatible)
*/
import QuestDataLoader from '../data/QuestDataLoader.js';
class QuestSystem {
constructor(scene) {
this.scene = scene;
@@ -24,6 +28,25 @@ class QuestSystem {
}
initializeQuests() {
console.log('📜 Loading Quest Manifest v2.0...');
// Load all quests from QuestDataLoader
const manifestQuests = QuestDataLoader.loadAllQuests();
manifestQuests.forEach(quest => {
this.registerQuest(quest);
});
console.log(`✅ Loaded ${manifestQuests.length} quests from manifest!`);
// Keep legacy quests for backwards compatibility
this.registerLegacyQuests();
}
/**
* Legacy quests for backwards compatibility
*/
registerLegacyQuests() {
// MAIN STORY QUEST 1: Zamegljeni Spomini
this.registerQuest({
id: 'zamegljeni_spomini',
@@ -305,6 +328,12 @@ class QuestSystem {
// Show start dialogue
if (quest.dialogue && quest.dialogue.start) {
this.showDialogue(quest.dialogue.start, quest.npc);
// 🔊 VOICEOVER: Play quest start dialogue
if (this.scene.voiceoverSystem) {
const voiceKey = `quest_${questId}_start`;
this.scene.voiceoverSystem.playVoiceover(voiceKey, quest.dialogue.start[0]);
}
}
// Trigger VFX
@@ -353,6 +382,12 @@ class QuestSystem {
const remaining = objective.required - objective.current;
const msg = quest.dialogue.progress[0].replace('{remaining}', remaining);
this.showDialogue([msg], quest.npc);
// 🔊 VOICEOVER: Play progress dialogue
if (this.scene.voiceoverSystem) {
const voiceKey = `quest_${questId}_progress`;
this.scene.voiceoverSystem.playVoiceover(voiceKey, msg);
}
}
}
@@ -450,6 +485,12 @@ class QuestSystem {
// Completion dialogue
if (quest.dialogue && quest.dialogue.complete) {
this.showDialogue(quest.dialogue.complete, quest.npc);
// 🔊 VOICEOVER: Play completion dialogue
if (this.scene.voiceoverSystem) {
const voiceKey = `quest_${questId}_complete`;
this.scene.voiceoverSystem.playVoiceover(voiceKey, quest.dialogue.complete[0]);
}
}
// Completion VFX