623 lines
19 KiB
Markdown
623 lines
19 KiB
Markdown
# Spécifications : Mort des Bébés
|
||
|
||
## Causes Spécifiques
|
||
- **Nurserie Pleine** : Si un œuf éclot et qu'il n'y a pas de place en nurserie ni sur le terrain.
|
||
- **Vente Échouée** : Bébé resté trop longtemps en zone de vente (camion) sans acheteur et sans rapatriement.
|
||
- **Conditions Extrêmes** : Les bébés ont des tolérances de température plus faibles que les adultes.
|
||
|
||
## Conséquences
|
||
- Perte définitive de l'animal.
|
||
- Pénalité forte sur le Score de Réputation.
|
||
- Pas de récupération de ressources (pièces).
|
||
|
||
# Annexes Techniques
|
||
|
||
## 1. Données et États
|
||
### Modèle de Données (JSON)
|
||
Événement loggé.
|
||
|
||
### Caractéristiques Initiales
|
||
**Compteur Morts** : 0.
|
||
|
||
### Scores Initiaux
|
||
**Taux Mortalité Infantile** : 0%.
|
||
|
||
## 2. Cycles de Vie et Apparition
|
||
### Conditions d'Apparition
|
||
Voir Causes.
|
||
|
||
### Conditions de Disparition
|
||
**Oubli** : Le souvenir (et le malus) s'estompe après 7 jours in-game.
|
||
|
||
### Hérédité
|
||
**Traumatisme** : Les parents ont -50% fertilité pendant 1 semaine (Choc émotionnel).
|
||
|
||
## 3. Impacts Environnementaux
|
||
### Impact Température
|
||
Voir `bebe_animal.md`.
|
||
|
||
### Impact Milieu (Biome)
|
||
**Tombe** : Une petite stèle apparaît temporairement sur la case (décoratif, disparaît au clic).
|
||
|
||
### Impact Saisons
|
||
**Hiver rigoureux** : Cause fréquente de mortalité infantile (Froid).
|
||
|
||
### Impact Heure / Jour-Nuit
|
||
**Nuit glaciale** : Moment critique (baisse T°).
|
||
|
||
## 4. Impacts Biologiques et Sociaux
|
||
### Impact Reproduction
|
||
**Deuil** : Pas de reproduction possible pour les parents pendant 24h.
|
||
|
||
### Impact Mort
|
||
**Effet domino** : Tristesse contagieuse aux animaux proches (Stress +10).
|
||
|
||
### Impact Nourriture
|
||
**Gaspillage** : La nourriture allouée au bébé est perdue (pourrit).
|
||
|
||
### Impact Attractivité (Visiteurs/Animaux)
|
||
**Malus** : -50 points de Réputation (temporaire 24h). Les visiteurs pleurent.
|
||
|
||
### Impact Valeur
|
||
**Perte sèche** : Valeur potentielle (élevée) perdue définitivement.
|
||
|
||
## 5. Impacts Logistiques et Économiques
|
||
### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
|
||
**Décomposition** : Le corps reste 1h avant de disparaître (Urgence sanitaire).
|
||
|
||
### Dépenses (Boutiques/Visiteurs)
|
||
**Frais d'équarrissage** : 10 pièces pour enlever le corps.
|
||
|
||
### Trajet Visiteurs
|
||
**Évitement** : Les visiteurs contournent la zone de mort (Rayon 2 cases).
|
||
|
||
## 6. Événements
|
||
### Événements du Jeu / Carte / Zoo / Ville / Visiteur
|
||
* **Mort Bébé** : Notification critique.
|
||
* **Enterrement** : Animation de disparition.
|
||
|
||
## 7. Progression
|
||
### Tableau des Upgrades
|
||
*Note : Prévention via Infirmerie.*
|
||
| Niveau Infirmerie | Réduction Risque Mort |
|
||
| :--- | :--- |
|
||
| 1 | -10% |
|
||
| 2 | -20% |
|
||
| 3 | -50% |
|
||
|
||
## 8. Logique et Interfaces
|
||
### Pseudo-code Impacts
|
||
```javascript
|
||
function handleBabyDeath(baby):
|
||
zoo.reputation -= 50
|
||
baby.parents.forEach(p => p.fertilityMod = 0.5)
|
||
spawnGrave(baby.position)
|
||
notifyPlayer("BABY_DIED")
|
||
```
|
||
|
||
### Messages d'Infos / Alerte
|
||
| ID | Niveau | Message |
|
||
| :--- | :--- | :--- |
|
||
| `BABY_DIED` | Critique | "Un bébé est mort ! Les visiteurs sont choqués." |
|
||
|
||
# Annexes UX/UI
|
||
|
||
## 0. Direction Artistique & Vue
|
||
* **Vue** : Isométrique (2.5D).
|
||
* **Style** : Coloré, vivant, détails foisonnants (Réf: IMG_20260303_170253.jpg).
|
||
* **Sprites** : 4 directions.
|
||
* **Interactions** :
|
||
* **Sélection** : Cliquer sur la base de l'élément (ou son sprite principal) pour le sélectionner.
|
||
* **Feedback** : Surbrillance (outline blanc/jaune) au survol de la souris.
|
||
|
||
|
||
## 1. Expérience Utilisateur (UX)
|
||
### Drame (Événement)
|
||
**Description UX** : Le bébé meurt.
|
||
**Description UI** : Le sprite devient gris/fantôme puis disparaît (montée au ciel). Musique triste.
|
||
**Emplacement** : Case Zoo/Nurserie.
|
||
**Intégration** : Immédiat.
|
||
**Navigation** : Auto (Cinématique).
|
||
**Événements** : `DEATH_ANIMATION`.
|
||
|
||
#### Assets
|
||
- **Musiques** : Jingle Triste (Violon).
|
||
- **Sons** : `gong.mp3` ou vent lugubre.
|
||
- **Graphiques** : Fantôme.
|
||
- **Images** : Pierre tombale (Sprite).
|
||
- **Vidéos** : Effet de pluie (Overlay).
|
||
- **Animations** : Opacité 100% -> 0%. Translation Y vers le haut.
|
||
- **Couleurs** : Gris, Noir.
|
||
- **Textes** : "RIP".
|
||
- **Formes** : Halo sombre.
|
||
|
||
### Notification (Alerte)
|
||
**Description UX** : Le joueur est informé de la perte.
|
||
**Description UI** : Popup Rouge/Noir. "Vous avez perdu un bébé [Cause]".
|
||
**Emplacement** : Centre Écran.
|
||
**Intégration** : Modal bloquante (Acknowledgment requis).
|
||
**Navigation** : Clic OK.
|
||
**Événements** : `DEATH_ACKNOWLEDGE`.
|
||
|
||
#### Assets
|
||
- **Musiques** : Silence (Coupure son).
|
||
- **Sons** : Bruit de tonnerre lointain.
|
||
- **Graphiques** : Crâne (icône).
|
||
- **Images** : Portrait du bébé avec ruban noir.
|
||
- **Vidéos** : `death_alert_glitch.webm` (0.7s loop, optionnel), `black_ribbon_fade.webm` (1.2s non loop).
|
||
- **Animations** : Tremblement de la fenêtre.
|
||
- **Couleurs** : Noir #000000.
|
||
- **Textes** : Cause du décès.
|
||
- **Formes** : Bordure noire épaisse.
|
||
|
||
## Définition
|
||
|
||
| Champ | Valeur |
|
||
|---|---|
|
||
| Concept | Événement de décès d’un animal au stade bébé, avec cause, conséquences (réputation, stress), et traces visuelles temporaires. |
|
||
| Rôle | Sanctionner les erreurs de gestion (nurserie pleine, conditions extrêmes), informer clairement le joueur, et déclencher des impacts sociaux/logistiques sans silence. |
|
||
| Portée | Un `animal_id` (bébé) + un contexte (zoo, emplacement iso) + une cause normalisée. |
|
||
| Contrainte | Pas de fallback silencieux : cause inconnue => log + erreur ; calculs à la volée, sans cache/mémorisation. |
|
||
|
||
## Fonctions (tableau détaillé)
|
||
|
||
| Fonction | Déclencheur | Entrées | Sorties | Règles | Observabilité |
|
||
|---|---|---|---|---|---|
|
||
| Détecter décès bébé | tick logique / action | `animal_id`, états | event décès | Mort si `health<=0` ou condition spéciale | Event `BABY_DIED` |
|
||
| Normaliser cause | au décès | signaux (nurserie pleine, temp, vente) | `cause_code` | Cause dans enum, sinon `UNKNOWN` + erreur | Log structuré `baby_death_unknown_cause` |
|
||
| Appliquer malus réputation | au décès | `cause_code` | réputation ↓ | Malus fort ; pondéré par visibilité visiteurs | Event `REPUTATION_CHANGED` |
|
||
| Appliquer stress proche | au décès | position iso | stress ↑ | Rayon 2 cases iso autour | Event `ANIMAL_STRESS_APPLIED` |
|
||
| Créer trace visuelle | au décès | position | stèle/fantôme | Trace TTL (ex. 1h) ; supprimable par clic | Event `GRAVE_SPAWNED` |
|
||
| Facturer enlèvement | au décès | - | coût | Coût fixe “équarrissage” si option active | Event `SANITATION_FEE_CHARGED` |
|
||
| Alerter joueur | au décès | cause + animal | notification | Modal d’ack obligatoire si critique | Event `UI_DEATH_ALERT_SHOWN` |
|
||
|
||
## Icone de base
|
||
|
||
| Élément | Spécification |
|
||
|---|---|
|
||
| Représentation | Icône crâne + ruban noir, variante “bébé” (petit crâne) |
|
||
| Couleur dominante | Noir / gris |
|
||
| Variantes | `icon_baby_death.png`, `icon_grave.png` |
|
||
| États | `critique` (rouge), `info` (gris), `acknowledged` (ruban) |
|
||
|
||
## Interactions (tableau détaillé)
|
||
|
||
| Interaction | Type | Préconditions | Étapes UI | Résultat | Erreurs / Messages |
|
||
|---|---|---|---|---|---|
|
||
| Voir détail décès | Consultation | événement présent | clic notif | panneau cause + impacts | - |
|
||
| Acknowledge modal | Action | modal affichée | clic OK | fermeture + trace possible | - |
|
||
| Retirer stèle | Action | trace visible | clic stèle | suppression trace | `GRAVE_NOT_FOUND` |
|
||
| Aller à l’emplacement | Navigation | position connue | clic “Voir sur la carte” | caméra centre | `LOCATION_UNAVAILABLE` |
|
||
|
||
## Annexes Techniques
|
||
|
||
### 1. Données et États (tableau détaillé)
|
||
|
||
| Donnée / État | Type | Exemple | Source | Contraintes |
|
||
|---|---|---|---|---|
|
||
| `death_id` | uuid_v4 | `uuid_v4` | DB | identifiant event |
|
||
| `animal_id` | uuid_v4 | `uuid_v4` | DB | cible |
|
||
| `is_baby` | boolean | true | DB | invariant |
|
||
| `cause_code` | string | `NURSERY_FULL` | calcul | enum |
|
||
| `scope.zoo_id` | uuid_v4 | `uuid_v4` | DB | - |
|
||
| `location.iso_x` | int \| null | 120 | DB | null si nurserie (slot) |
|
||
| `location.iso_y` | int \| null | 88 | DB | null si nurserie (slot) |
|
||
| `location.nurserie_id` | uuid_v4 \| null | `uuid_v4` | DB | null si sur grille |
|
||
| `location.slot_id` | int \| null | 3 | DB | requis si nurserie |
|
||
| `effects.reputation_delta` | int | -50 | calcul | signé |
|
||
| `effects.stress_radius_tiles` | int | 2 | config | iso |
|
||
| `effects.cleanup_fee` | int | 10 | config | coins |
|
||
| `ttl.grave_seconds` | int | 3600 | config | suppression auto |
|
||
| `timestamps.created_at` | timestamp | - | DB | UTC |
|
||
|
||
#### Caractéristiques Initiales (tableau détaillé)
|
||
|
||
| Caractéristique | Valeur initiale | Unité | Notes |
|
||
|---|---:|---|---|
|
||
| Compteur morts bébés | 0 | count | par zoo |
|
||
| Frais enlèvement | 10 | coins | configurable |
|
||
| Durée trace | 3600 | s | stèle/fantôme |
|
||
|
||
#### Scores Initiaux (tableau détaillé)
|
||
|
||
| Score | Valeur initiale | Plage | Impact |
|
||
|---|---:|---|---|
|
||
| Taux mortalité infantile | 0% | 0..100% | affichage suivi, pas d’analytics |
|
||
| Malus réputation moyen | 0 | points | calcul à la volée sur fenêtre |
|
||
|
||
### 2. Cycles de Vie et Apparition (tableau détaillé)
|
||
|
||
| Phase | Déclencheur | Entrées | Sorties | Invariants |
|
||
|---|---|---|---|---|
|
||
| Détection | tick | états bébé | décès | cause déterminée |
|
||
| Notification | décès | cause | modal | ack requis |
|
||
| Trace | décès | position | stèle | TTL |
|
||
| Oubli | temps | 7 jours in-game | malus amorti | fenêtre glissante |
|
||
|
||
#### Conditions d'Apparition (tableau détaillé)
|
||
|
||
| Condition | Seuil | Opérateur | Résultat |
|
||
|---|---:|---|---|
|
||
| Bébé meurt | true | est | event `BABY_DIED` |
|
||
|
||
#### Conditions de Disparition (tableau détaillé)
|
||
|
||
| Condition | Seuil | Opérateur | Résultat |
|
||
|---|---:|---|---|
|
||
| Trace TTL | 3600 | atteint | suppression auto |
|
||
| Clic stèle | true | est | suppression manuelle |
|
||
|
||
#### Hérédité (tableau détaillé)
|
||
|
||
| Élément | Hérité | Règle |
|
||
|---|---|---|
|
||
| Deuil parents | Oui | fertilité \(-50%\) pendant 1 semaine in-game |
|
||
| Historique décès | Oui | visible journal zoo |
|
||
|
||
### 3. Impacts Environnementaux
|
||
|
||
#### Impact Température (tableau détaillé)
|
||
|
||
| Condition | Effet | Notes |
|
||
|---|---|---|
|
||
| Temp extrême | risque décès ↑ | cf. `bebe_animal.md` |
|
||
|
||
#### Impact Milieu (Biome) (tableau détaillé)
|
||
|
||
| Biome | Effet | Notes |
|
||
|---|---|---|
|
||
| - | stèle décorative | apparaît sur case (si décès sur grille) |
|
||
|
||
#### Impact Saisons (tableau détaillé)
|
||
|
||
| Saison | Effet | Notes |
|
||
|---|---|---|
|
||
| Hiver | cause fréquente (froid) | surveillance accrue |
|
||
|
||
#### Impact Heure / Jour-Nuit (tableau détaillé)
|
||
|
||
| Période | Effet | Notes |
|
||
|---|---|---|
|
||
| Nuit | risque froid ↑ | baisse T° |
|
||
|
||
### 4. Impacts Biologiques et Sociaux
|
||
|
||
#### Impact Reproduction (tableau détaillé)
|
||
|
||
| Facteur | Effet sur taux | Condition |
|
||
|---|---|---|
|
||
| Deuil | \(-50%\) | parents du bébé |
|
||
| Blocage court | 0 | 24h in-game après décès |
|
||
|
||
#### Impact Mort (tableau détaillé)
|
||
|
||
| Cas | Effet | Condition |
|
||
|---|---|---|
|
||
| Domino | stress +10 | animaux à ≤2 cases iso |
|
||
|
||
#### Impact Nourriture (tableau détaillé)
|
||
|
||
| Ressource | Effet | Condition |
|
||
|---|---|---|
|
||
| Ration allouée | perdue | décès avant consommation |
|
||
|
||
#### Impact Attractivité(Visiteurs (tableau détaillé)
|
||
|
||
| Action/État | Gain | Rayon | Notes |
|
||
|---|---:|---:|---|
|
||
| Décès visible | - | 2 cases | visiteurs évitent |
|
||
|
||
#### Impact Attractivité Animaux) (tableau détaillé)
|
||
|
||
| Action/État | Effet animaux | Condition |
|
||
|---|---|---|
|
||
| Décès proche | stress ↑ | zone impact |
|
||
|
||
#### Impact Valeur (tableau détaillé)
|
||
|
||
| Facteur | Variation | Condition |
|
||
|---|---:|---|
|
||
| Perte potentielle | -100% | bébé disparu |
|
||
|
||
### 5. Impacts Logistiques et Économiques
|
||
|
||
#### Vitesse (Camion) (tableau détaillé)
|
||
|
||
| Paramètre | Effet | Condition |
|
||
|---|---|---|
|
||
| Décès en camion | blocage slot | vente échouée, non rapatriée |
|
||
|
||
#### Vitesse (Nurserie) (tableau détaillé)
|
||
|
||
| Paramètre | Effet | Condition |
|
||
|---|---|---|
|
||
| Saturation | risque décès | nurserie pleine + éclosion |
|
||
|
||
#### Vitesse (Accueil) (tableau détaillé)
|
||
|
||
| Paramètre | Effet | Condition |
|
||
|---|---|---|
|
||
| - | - | - |
|
||
|
||
#### Vitesse (Recherche) (tableau détaillé)
|
||
|
||
| Paramètre | Effet | Condition |
|
||
|---|---|---|
|
||
| - | - | - |
|
||
|
||
#### Vitesse (Labo) (tableau détaillé)
|
||
|
||
| Paramètre | Effet | Condition |
|
||
|---|---|---|
|
||
| - | - | - |
|
||
|
||
#### Vitesse (Visite) (tableau détaillé)
|
||
|
||
| Paramètre | Effet | Condition |
|
||
|---|---|---|
|
||
| Zone de décès | ralentit flux | évitement visiteurs |
|
||
|
||
#### Dépenses (Billeterie) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| - | 0 | - | - |
|
||
|
||
#### Dépenses (Boutiques) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| - | 0 | - | - |
|
||
|
||
#### Dépenses (Visiteurs) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| - | 0 | - | - |
|
||
|
||
#### Dépenses (Employés) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| Intervention sanitaire | 10 | coins | option équarrissage |
|
||
|
||
#### Dépenses (Boutiques) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| Section dupliquée | 0 | - | conservée |
|
||
|
||
#### Dépenses (Nurseries) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| Upgrade prévention | variable | coins | infirmerie/nurserie |
|
||
|
||
#### Dépenses (Nourriture) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| - | 0 | - | - |
|
||
|
||
#### Dépenses (Acceuil des animaux) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| - | 0 | - | - |
|
||
|
||
#### Dépenses (Camion) (tableau détaillé)
|
||
|
||
| Poste | Coût | Unité | Condition |
|
||
|---|---:|---|---|
|
||
| Rapatriement | 5 | coins | vente échouée |
|
||
|
||
#### Trajet Visiteurs
|
||
|
||
##### Trajet Visiteurs vers/depuis la ville (tableau détaillé)
|
||
|
||
| Source | Destination | Déclencheur | Effet |
|
||
|---|---|---|---|
|
||
| Ville | Zoo | réputation | baisse fréquentation si répétée |
|
||
|
||
##### Trajet Visiteurs vers/depuis les animaux (tableau détaillé)
|
||
|
||
| Source | Destination | Déclencheur | Effet |
|
||
|---|---|---|---|
|
||
| Allées | Zone décès | proximité | évitement |
|
||
|
||
##### Trajet Visiteurs vers/depuis les boutiques (tableau détaillé)
|
||
|
||
| Source | Destination | Déclencheur | Effet |
|
||
|---|---|---|---|
|
||
| Zone décès | Boutique | fuite | déplacement rapide |
|
||
|
||
##### Trajet Visiteurs vers/depuis la billeterie (entrées/sorties du zoo) (tableau détaillé)
|
||
|
||
| Source | Destination | Déclencheur | Effet |
|
||
|---|---|---|---|
|
||
| Zone décès | Sortie | choc | sortie anticipée |
|
||
|
||
### 6. Événements
|
||
|
||
#### Événements du Jeu (tableau détaillé)
|
||
|
||
| Event | Déclencheur | Payload | Effet |
|
||
|---|---|---|---|
|
||
| `BABY_DIED` | décès | `animal_id`, `cause_code` | impacts |
|
||
| `GRAVE_SPAWNED` | trace | `iso_x`, `iso_y` | stèle |
|
||
| `SANITATION_FEE_CHARGED` | option | `amount` | coins - |
|
||
|
||
#### Événements du Carte (tableau détaillé)
|
||
|
||
| Event | Déclencheur | Effet |
|
||
|---|---|---|
|
||
| `DEATH_MARKER_SHOW` | map open | marker zone |
|
||
|
||
#### Événements du Zoo (tableau détaillé)
|
||
|
||
| Event | Déclencheur | Effet |
|
||
|---|---|---|
|
||
| `UI_DEATH_ALERT_SHOWN` | notif | modal |
|
||
|
||
#### Événements du Ville / Visiteur (tableau détaillé)
|
||
|
||
| Event | Déclencheur | Effet |
|
||
|---|---|---|
|
||
| `VISITOR_AVOID_DEATH_ZONE` | proximité | reroute |
|
||
|
||
#### Événements du Visiteur (tableau détaillé)
|
||
|
||
| Event | Déclencheur | Effet |
|
||
|---|---|---|
|
||
| `VISITOR_CRIES` | mort visible | satisfaction - |
|
||
|
||
#### Événements du Joueur (tableau détaillé)
|
||
|
||
| Event | Déclencheur | Effet |
|
||
|---|---|---|
|
||
| `PLAYER_ACK_DEATH` | clic OK | clôture |
|
||
| `PLAYER_REMOVE_GRAVE` | clic stèle | suppression |
|
||
|
||
### 7. Progression
|
||
|
||
#### Tableau des Upgrades (tableau détaillé)
|
||
|
||
| Niveau | Coût | Effet | Débloque |
|
||
|---|---:|---|---|
|
||
| Infirmerie 1 | 100 | risque -10% | soins |
|
||
| Infirmerie 2 | 250 | risque -20% | urgence |
|
||
| Infirmerie 3 | 800 | risque -50% | protocole |
|
||
|
||
### 8. Logique et Interfaces
|
||
|
||
#### Pseudo-code Impacts (tableau détaillé)
|
||
|
||
| Fonction | Entrées | Sorties | Notes |
|
||
|---|---|---|---|
|
||
| `handleBabyDeath` | baby, cause | event | applique malus |
|
||
| `computeDeathVisibility` | location, visitors | bool | pondère impacts |
|
||
| `spawnGrave` | location | grave | TTL |
|
||
|
||
#### Messages d'Infos / Alerte (tableau détaillé)
|
||
|
||
| ID | Niveau | Message | Condition |
|
||
|---|---|---|---|
|
||
| `BABY_DIED` | Critique | "Un bébé est mort." | décès |
|
||
| `NURSERY_FULL_DEATH` | Critique | "Nurserie pleine : décès." | cause `NURSERY_FULL` |
|
||
| `SALE_TRUCK_DEATH` | Warning | "Décès en camion : vente échouée." | cause `SALE_TRUCK_TIMEOUT` |
|
||
|
||
## Annexes UX/UI
|
||
|
||
### 1. Expérience Utilisateur (UX)
|
||
|
||
#### Description UX (tableau détaillé)
|
||
|
||
| Parcours | But | Friction | Réduction clics |
|
||
|---|---|---|---|
|
||
| Recevoir l’alerte | comprendre la cause | choc | modal + bouton “voir sur carte” |
|
||
| Retirer trace | nettoyer zone | navigation | clic direct sur stèle |
|
||
|
||
#### Description UI (tableau détaillé)
|
||
|
||
| Composant | Contenu | États |
|
||
|---|---|---|
|
||
| Modal décès | cause + impacts | critique/ack |
|
||
| Stèle | sprite décoratif | clickable/ttl |
|
||
| Marker carte | icône | visible/masqué |
|
||
|
||
#### Emplacement (tableau détaillé)
|
||
|
||
| Zone UI | Position | Notes |
|
||
|---|---|---|
|
||
| HUD | notifications | priorité haute |
|
||
| Carte zoo | sur case | stèle |
|
||
|
||
#### Intégration (tableau détaillé)
|
||
|
||
| Intégration | Contrat | Notes |
|
||
|---|---|---|
|
||
| `bebe_animal.md` | fragilité temp | causes |
|
||
| `score_reputation.md` | malus réputation | impacts |
|
||
|
||
#### Navigation (tableau détaillé)
|
||
|
||
| Action | Chemin | Résultat |
|
||
|---|---|---|
|
||
| Ouvrir détail | notif → modal | cause affichée |
|
||
| Aller sur carte | bouton modal | caméra centre |
|
||
| Retirer stèle | clic stèle | suppression |
|
||
|
||
#### Événements (tableau détaillé)
|
||
|
||
| Event UI | Déclencheur | Effet |
|
||
|---|---|---|
|
||
| `OPEN_DEATH_MODAL` | event | modal |
|
||
| `CLICK_VIEW_ON_MAP` | bouton | caméra |
|
||
| `CLICK_REMOVE_GRAVE` | stèle | suppression |
|
||
|
||
#### Assets Skinables
|
||
|
||
##### Musiques (tableau détaillé)
|
||
|
||
| Asset | Usage | Durée | Notes |
|
||
|---|---|---:|---|
|
||
| `baby_death_sting.mp3` | décès | 2.0s | triste |
|
||
|
||
##### Sons (tableau détaillé)
|
||
|
||
| Asset | Usage | Volume |
|
||
|---|---|---|
|
||
| `ui_death_gong.mp3` | alerte | moyen |
|
||
| `ui_modal_close.mp3` | ack | bas |
|
||
|
||
##### Graphiques (tableau détaillé)
|
||
|
||
| Asset | Usage | Contraintes |
|
||
|---|---|---|
|
||
| `grave_stone_iso.png` | stèle | iso 4 dirs |
|
||
| `baby_ghost_fx.png` | fantôme | overlay |
|
||
| `death_skull_icon.png` | icône | contraste |
|
||
|
||
##### Images (tableau détaillé)
|
||
|
||
| Asset | Usage |
|
||
|---|---|
|
||
| `black_ribbon.png` | modal |
|
||
| `death_bg_noise.png` | overlay |
|
||
|
||
##### Vidéos (tableau détaillé)
|
||
|
||
| Asset | Usage | Durée |
|
||
|---|---|---:|
|
||
| `death_alert_glitch.webm` | modal | 0.7s |
|
||
|
||
##### Animations (tableau détaillé)
|
||
|
||
| Animation | Déclencheur | Notes |
|
||
|---|---|---|
|
||
| fade fantôme | décès | 1.0s |
|
||
| tremblement modal | alerte | 0.5s |
|
||
|
||
##### Couleurs (tableau détaillé)
|
||
|
||
| Token | Valeur | Usage |
|
||
|---|---|---|
|
||
| `death_black` | #000000 | fond |
|
||
| `death_gray` | #616161 | texte |
|
||
| `death_red` | #D32F2F | critique |
|
||
|
||
##### Textes (tableau détaillé)
|
||
|
||
| Clé | FR | EN |
|
||
|---|---|---|
|
||
| `death.baby.title` | Décès d’un bébé | Baby death |
|
||
| `death.baby.cause` | Cause | Cause |
|
||
| `death.ack` | OK | OK |
|
||
|
||
##### Formes (tableau détaillé)
|
||
|
||
| Élément | Forme | Notes |
|
||
|---|---|---|
|
||
| Modal | rectangle arrondi | accessible |
|
||
| Icône | rond | constant |
|