Files
builazoo/docs/specs/etat.md
Nicolas Cantu e92c1355d0 Enrichissement exhaustif des specs : Vue Isométrique et Design
**Motivations:**
- Aligner toute la documentation technique avec la nouvelle direction artistique isométrique (Réf IMG_20260303_170253).
- Faciliter l'implémentation en ajoutant les contraintes techniques liées à la 2.5D (Z-index, Sprites 4 directions).

**Root causes:**
- Besoin de cohérence visuelle et technique sur l'ensemble du projet.

**Correctifs:**
- N/A

**Evolutions:**
- Ajout systématique de la section "Direction Artistique & Vue" dans `Annexes UX/UI` de tous les fichiers.
- Enrichissement des modèles JSON avec coordonnées isométriques (`iso_x`, `iso_y`, `z_index`).
- Précision des interactions (clic, survol) adaptées à la grille losange.
- Conservation stricte de la structure existante (aucun titre supprimé).

**Pages affectées:**
- docs/specs/*
2026-03-05 02:10:32 +01:00

135 lines
4.0 KiB
Markdown

# Spécifications : États (Feedbacks Visuels)
## Définition
Indicateurs visuels permettant au joueur de comprendre l'état de ses animaux et de son terrain sans utiliser de jauges (UI).
## États des Animaux
- **Froid** : Teinte bleuâtre/pâle, givre visible sur le sprite.
- **Chaud** : Teinte rougeâtre, vapeur de chaleur visible.
- **Faim** : Déplacement lent, maigreur visible, cherche le sol, icône "faim" discrète.
- **Maladie / Mort proche** : Animal couché, couleurs ternes, mouches autour.
- **Heureux / Reproduction** : Cœurs, sautillements, couleurs vives.
## États du Terrain
- **Mauvais Biome** : Herbe jaunie, sol craquelé ou boueux (changement de teinte global).
- **Température Inadaptée** : Sol givré (froid) ou vapeurs (chaud).
- **Saleté** : Déchets sombres, poussière grise.
# Annexes Techniques
## 1. Données et États
### Modèle de Données (JSON)
Liste d'enums ou flags dans l'objet `Animal` ou `Case`.
`visual_states: ["frozen", "hungry"]`
### Caractéristiques Initiales
**État par défaut** : Neutre.
### Scores Initiaux
**Compteur États** : 0 actifs.
## 2. Cycles de Vie et Apparition
### Conditions d'Apparition
Déclenchés par les seuils de stats (Santé, Faim, T°).
### Conditions de Disparition
Retour à la normale des stats.
### Hérédité
**Sensibilité** : Les enfants héritent de la résistance aux états (Froid/Chaud) des parents.
## 3. Impacts Environnementaux
### Impact Température
Déclencheurs Froid/Chaud.
### Impact Milieu (Biome)
Déclencheurs Mauvais Biome.
### Impact Saisons
**Hiver** : Augmente la fréquence de l'état "Froid".
### Impact Heure / Jour-Nuit
**Nuit** : Augmente la fréquence de l'état "Sommeil".
## 4. Impacts Biologiques et Sociaux
### Impact Reproduction
Déclencheur Heureux.
### Impact Mort
Déclencheur Maladie/Mort.
### Impact Nourriture
Déclencheur Faim.
### Impact Attractivité (Visiteurs/Animaux)
Les états négatifs (Sale, Malade) repoussent les visiteurs.
### Impact Valeur
**Malus** : Un animal avec un état négatif vaut -20% à la vente.
## 5. Impacts Logistiques et Économiques
### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
N/A
### Dépenses (Boutiques/Visiteurs)
N/A
### Trajet Visiteurs
**Fuite** : Les visiteurs évitent les animaux avec l'état "Malade".
## 6. Événements
### Événements du Jeu / Carte / Zoo / Ville / Visiteur
N/A
## 7. Progression
### Tableau des Upgrades
| Niveau | Effet |
| :--- | :--- |
| 1 | Détection simple |
| 2 | Détection avancée (Prévision) |
## 8. Logique et Interfaces
### Pseudo-code Impacts
```
if animal.temp < animal.idealTemp - 10:
addVisualState("frozen")
elif animal.temp > animal.idealTemp + 10:
addVisualState("overheat")
```
### Messages d'Infos / Alerte
| ID | Niveau | Message |
| :--- | :--- | :--- |
| `STATE_CRITICAL` | Alerte | "État critique détecté !" |
# 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)
### Lecture Immédiate (Passif)
**Description UX** : Le joueur comprend la situation d'un coup d'œil sans ouvrir de menu.
**Description UI** : Pas d'UI. Tout passe par le rendu graphique des entités.
**Emplacement** : Grille Zoo.
**Intégration** : Moteur de rendu.
**Navigation** : Automatique.
**Événements** : `STATE_CHANGE`.
#### Assets
- **Musiques** : Nappe sonore (battement cœur).
- **Sons** : `heartbeat.mp3`.
- **Graphiques** : Shaders (Color Overlay), Systèmes de particules.
- **Images** : Icône État.
- **Vidéos** : Shader overlay.
- **Animations** : Animations spécifiques (Trembler, Boiter).
- **Couleurs** : Code universel (Bleu=Froid, Rouge=Chaud, Vert=OK, Jaune=Malade).
- **Textes** : Nom de l'état.
- **Formes** : Icône flottante.