**Motivations:** - Make docs/specs implementation-ready without empty sections or placeholders. **Root causes:** - Multiple specs still contained non-actionable placeholders (N/A, “see above”, "..."), and inconsistent “no cache” wording. **Correctifs:** - Replace placeholders with explicit tables, structures, and typed examples. - Align “no cache / no memorization” statements where relevant. **Evolutions:** - Add a features doc entry to track the documentation enrichment effort. **Pages affectées:** - docs/specs/* - docs/features/docs-specs-enrichment.md - docs/leo.md - docs/plan-enrich-docs-specs.md
79 lines
3.2 KiB
Markdown
79 lines
3.2 KiB
Markdown
# Pont
|
||
|
||
## 1. Définition
|
||
Structure permettant aux visiteurs (et au personnel) de traverser les étendues d'eau. Il fonctionne techniquement comme un chemin mais peut être construit sur les cases de type "Eau".
|
||
|
||
## 2. Fonctions
|
||
* **Traversée :** Rend accessible des zones isolées par des rivières ou des lacs.
|
||
* **Esthétique :** Ajoute du relief et de la variété au paysage du zoo.
|
||
* **Observation :** Peut servir de point de vue pour observer des animaux aquatiques (si enclos aquatique en dessous).
|
||
|
||
## 3. Icone
|
||
* **Représentation :** Pont en arc ou Planches sur l'eau.
|
||
* **Couleur dominante :** Bois et Bleu.
|
||
|
||
## 4. Interactions
|
||
* **Construction :** Outil "Pont" (ou outil "Chemin" détectant l'eau automatiquement).
|
||
* **Coût :** Plus cher qu'un chemin standard de même niveau.
|
||
|
||
## 5. Annexes Techniques
|
||
|
||
### Données (JSON)
|
||
```json
|
||
{
|
||
"bridge_id": "uuid",
|
||
"owner_zoo_id": "uuid",
|
||
"type": "enum('wood_planks','stone_bridge','rope_bridge')",
|
||
"created_at": "timestamp",
|
||
"updated_at": "timestamp",
|
||
"coordinates": {"x": 15, "y": 15},
|
||
"water_underneath": true,
|
||
"connected_neighbors": ["enum('N','S','E','W')"],
|
||
"durability": "integer (0-100)",
|
||
"stats": {
|
||
"speed_modifier": 1.0,
|
||
"attractiveness_bonus": 5
|
||
},
|
||
"cost_per_tile": 50,
|
||
"repair_cost": 20,
|
||
"render": {
|
||
"auto_tile_key": "string",
|
||
"height_offset_px": "integer (>= 0)",
|
||
"occluder": "boolean"
|
||
},
|
||
"iso_x": "integer",
|
||
"iso_y": "integer",
|
||
"z_index": "integer"
|
||
}
|
||
```
|
||
|
||
### Règles Métier
|
||
* **Support :** Doit commencer et finir sur la terre ferme (ou se connecter à un autre pont).
|
||
* **Hauteur :** En vue isométrique, le pont peut être légèrement surélevé par rapport à l'eau.
|
||
* **Auto-tiling** : se connecte aux ponts adjacents et (optionnellement) aux chemins si le bord touche la terre.
|
||
* **Usure** : `durability` baisse de 1/jour + 1 par X passages (ex. 50 passages). En dessous de 20, bruit de craquement + risque incident (arrêt temporaire) si non réparé.
|
||
* **Erreur construction** : interdite si la tuile d’eau est “profonde” et non pontable (flag terrain), ou si collision avec un bâtiment.
|
||
|
||
## 6. Annexes UX/UI
|
||
* **Visuel :** Planches de bois avec rambardes, piliers plongeant dans l'eau.
|
||
* **Son :** Bruit de pas sur le bois (creux).
|
||
* **Reflet :** Reflet du pont dans l'eau (si moteur graphique le permet).
|
||
|
||
|
||
# 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. Interactions UI (construction / réparation)
|
||
* **Construction** : mode “peinture” possible (drag) pour poser plusieurs tuiles de pont d’affilée, avec preview auto-tiling.
|
||
* **Réparation** : clic sur pont (durabilité < 100) → bouton “Réparer” (coût affiché) → animation marteau + retour à 100.
|
||
* **Messages** :
|
||
* `BRIDGE_BUILD_BLOCKED` : "Impossible de construire un pont ici."
|
||
* `BRIDGE_NEEDS_REPAIR` : "Pont endommagé : réparation recommandée."
|