feat(types): add SiteStep and refactor GameStep for new intro flow
🔍 Lint / 🪄 Check lint (pull_request) Has been cancelled
🔍 Lint / 🎨 Check format (pull_request) Has been cancelled
🔍 Lint / 🔎 Typecheck (pull_request) Has been cancelled
📊 Quality / 🔒 Security Audit (pull_request) Has been cancelled
📊 Quality / 📋 Dependency Freshness (pull_request) Has been cancelled
📊 Quality / 📦 Bundle Size (pull_request) Has been cancelled
🔍 Lint / 🏗 Build (pull_request) Has been cancelled

This commit is contained in:
Tom Boullay
2026-05-30 02:14:10 +02:00
parent 345d49f485
commit 4c5e2ed945
11 changed files with 42 additions and 508 deletions
+17 -19
View File
@@ -1,24 +1,22 @@
import type { Vector3Tuple } from "@/types/three/three";
import type { RepairMissionId } from "@/types/gameplay/repairMission";
/**
* Steps for the /site onboarding page
*/
export type SiteStep =
| "welcome" // Écran 1: Bienvenue à Altera
| "situation" // Écran 2: Quelle est votre situation
| "naming" // Écran 3: Quel est votre prénom (Danyl)
| "transition"; // Fondu noir + dialogue final
/**
* Steps for the intro sequence (after /site, on / route)
*/
export type GameStep =
| "intro"
| "start-intro"
| "naming"
| "bienvenue"
| "star-move"
| "mission2"
| "searching"
| "helped"
| "manipulation"
| "outOfFabrik";
| "loading-map" // Chargement des assets
| "video" // Vidéo intro.mp4
| "dialogue-intro" // Dialogues post-vidéo (écran noir)
| "reveal" // Fondu noir → jeu visible
| "playing"; // Intro terminée, jeu actif
export type MainGameState = "intro" | RepairMissionId | "outro";
export interface Zone {
id: string;
position: Vector3Tuple;
radius: number;
height: number;
targetStep: GameStep;
}