Files
La-Fabrik/src/data/world/characters/characterConfig.ts
T
Tom Boullay bff8a16290
🔍 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
feat(intro): add ebike onboarding sequence
2026-05-31 10:42:46 +02:00

54 lines
1.3 KiB
TypeScript

import type { Vector3Tuple } from "@/types/three/three";
export type CharacterId = "electricienne" | "gerant" | "fermier";
export interface CharacterConfig {
id: CharacterId;
label: string;
modelPath: string;
position: Vector3Tuple;
rotation: Vector3Tuple;
scale: Vector3Tuple;
animations: readonly string[];
defaultAnimation: string;
}
export const CHARACTER_CONFIGS = {
electricienne: {
id: "electricienne",
label: "Electricienne",
modelPath: "/models/electricienne-animated/model.gltf",
position: [-40.5, 0, 45.5],
rotation: [0, -0.35, 0],
scale: [1, 1, 1],
animations: ["Dance"],
defaultAnimation: "Dance",
},
gerant: {
id: "gerant",
label: "Gerant",
modelPath: "/models/gerant-animated/model.gltf",
position: [59.5, 0, 64.64],
rotation: [0, 2.41, 0],
scale: [1, 1, 1],
animations: ["idle", "walk"],
defaultAnimation: "idle",
},
fermier: {
id: "fermier",
label: "Fermier",
modelPath: "/models/fermier-animated/model.gltf",
position: [-6.5, 0, -69.5],
rotation: [0, -1.18, 0],
scale: [1, 1, 1],
animations: ["idle", "walk"],
defaultAnimation: "idle",
},
} satisfies Record<CharacterId, CharacterConfig>;
export const CHARACTER_IDS = [
"electricienne",
"gerant",
"fermier",
] as const satisfies readonly CharacterId[];