Files
builazoo/docs/specs/temperature.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

161 lines
5.3 KiB
Markdown

# Spécifications : Température
## Définition
Paramètre environnemental lié au milieu (couleur) de la case.
## Impact
- **Survie** : Chaque animal a une plage de température idéale.
- **Trop Froid** : L'animal gèle (feedback givre/bleu). Risque de mort.
- **Trop Chaud** : L'animal surchauffe (feedback vapeur/rouge). Risque de mort.
- **Reproduction** : Une température idéale est requise pour la reproduction optimale.
## Modification
- La température est intrinsèque à la case (liée au biome).
- **Upgrade** : L'achat d'un "Changement de milieu (température choisie)" permet d'ajuster la température d'une case spécifique pour l'adapter à un animal.
# Annexes Techniques
## 1. Données et États
### Modèle de Données (JSON)
Propriété de `Case`.
`temperature: float`
### Caractéristiques Initiales
Définie par le biome (voir `milieu.md`).
### Scores Initiaux
**T° Moyenne** : 20°C (Référence).
## 2. Cycles de Vie et Apparition
### Conditions d'Apparition
Système Météo Global.
### Conditions de Disparition
**Permanence** : La température est une constante physique, elle ne disparaît jamais (sauf bug univers).
### Hérédité
**Climat** : Le joueur choisit son climat de départ au reset (Tropical, Tempéré, Polaire).
## 3. Impacts Environnementaux
### Impact Température
**Auto-référence** : La température influe sur... la température (inertie thermique).
### Impact Milieu (Biome)
**Inertie** : L'eau change de T° moins vite que la terre (Tampon thermique).
### Impact Saisons
| Saison | Modificateur Global |
| :--- | :--- |
| Printemps | +0°C |
| Été | +10°C |
| Automne | -2°C |
| Hiver | -15°C |
### Impact Heure / Jour-Nuit
| Cycle | Modificateur |
| :--- | :--- |
| Jour | +5°C (Midi) |
| Nuit | -5°C (Minuit) |
## 4. Impacts Biologiques et Sociaux
### Impact Reproduction
**Fenêtre Fertilité** : +/- 5°C autour de l'idéal de l'animal.
### Impact Mort
**Seuil Critique** : +/- 20°C autour de l'idéal = Dégâts massifs.
### Impact Nourriture
**Froid** : Augmente la consommation de nourriture (+20% par tranche de 5°C sous l'idéal).
### Impact Attractivité (Visiteurs/Animaux)
**Confort Visiteur** : T° idéale (22°C) = Bonus satisfaction. Si > 30°C ou < 5°C, satisfaction baisse plus vite.
### Impact Valeur
**Coût Énergie** : Chauffage/Clim coûte cher (10 pièces/degré corrigé).
## 5. Impacts Logistiques et Économiques
### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
**Gel** : Si T° < 0°C, vitesse déplacement -20% (Verglas).
### Dépenses (Boutiques/Visiteurs)
**Facture Énergétique** : Coût mensuel lié aux régulateurs thermiques.
### Trajet Visiteurs
**Ombre** : Les visiteurs cherchent l'ombre en été (Pathfinding modifié).
## 6. Événements
### Événements du Jeu / Carte / Zoo / Ville / Visiteur
* **Canicule** : +10°C temporaire.
* **Vague de Froid** : -10°C temporaire.
## 7. Progression
### Tableau des Upgrades
**Régulateur Thermique (Case)** :
| Niveau | Coût | Plage Réglage | Temps |
| :--- | :--- | :--- | :--- |
| 1 | 200 | +/- 5°C | 0s |
| 2 | 500 | +/- 10°C | 0s |
| 3 | 1000 | +/- 20°C | 0s |
| 7 | 2000 | +/- 50°C | 0s |
## 8. Logique et Interfaces
### Pseudo-code Impacts
```
currentTemp = baseBiomeTemp + seasonMod + dayNightMod + caseRegulatorOffset
```
### Messages d'Infos / Alerte
| ID | Niveau | Message |
| :--- | :--- | :--- |
| `TEMP_CRITICAL` | Alerte | "Température critique sur une case !" |
# 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)
### Visualisation Thermique (Passif)
**Description UX** : Le joueur voit la température de chaque case.
**Description UI** : Mode "Vue Thermique" (Overlay). Cases froides = Bleu, Chaudes = Rouge.
**Emplacement** : Bouton HUD "Filtres".
**Intégration** : Overlay global.
**Navigation** : Toggle On/Off.
**Événements** : `TOGGLE_THERMAL_VIEW`.
#### Assets
- **Musiques** : Sonar "Ping" lors de l'activation.
- **Sons** : `switch.mp3`.
- **Graphiques** : Overlay dégradé Bleu/Rouge semi-transparent.
- **Images** : Légende thermique (Barre de couleur).
- **Vidéos** : Effet de chaleur (ondulation de l'air).
- **Animations** : Fade In/Out de l'overlay.
- **Couleurs** : Bleu (#0000FF) -> Rouge (#FF0000).
- **Textes** : "25°C" (sur chaque case).
- **Formes** : Grille colorée.
### Feedback Critique (Alerte)
**Description UX** : Une case est mortelle pour son occupant.
**Description UI** : La case clignote ou a un bord rouge. L'animal tremble (froid) ou transpire (chaud).
**Emplacement** : Case.
**Intégration** : Immédiat.
**Navigation** : Auto (Alerte).
**Événements** : `TEMP_ALERT`.
#### Assets
- **Musiques** : Sirène "Alerte Météo" (lointaine).
- **Sons** : `shiver.mp3` (dents qui claquent) ou `pant.mp3`.
- **Graphiques** : Particules Givre ou Vapeur.
- **Images** : Icône Flocon ou Flamme.
- **Vidéos** : Effet de gel (bords écran blancs).
- **Animations** : Tremblement sprite.
- **Couleurs** : Bleu Glace / Rouge Feu.
- **Textes** : "Danger T° !".
- **Formes** : Pulsation rouge autour de la case.