50 lines
2.0 KiB
Markdown
50 lines
2.0 KiB
Markdown
# Maire (Ville)
|
||
|
||
## 1. Définition
|
||
Personnage représentant la ville sur la carte du monde. Il sert d’interface narrative-fonctionnelle pour les événements de ville (festival, grève, bonus économique) qui impactent le flux de visiteurs et le budget moyen.
|
||
|
||
## 2. Fonctions
|
||
* **Annonce événements** : Présente les événements de ville et leurs impacts chiffrés.
|
||
* **Relation ville-zoo** : Expose l’état de relation/jumelage (si présent dans `ville.md`).
|
||
* **Point d’entrée UI** : Personnage contextuel quand le joueur sélectionne une ville ou quand un événement `CITY_EVENT` survient.
|
||
|
||
## 3. Icone
|
||
* **Représentation :** Écharpe tricolore / blason.
|
||
* **Couleur dominante :** Bleu (institution) + accents thème.
|
||
|
||
## 4. Interactions
|
||
* **Clic ville** : ouvre le panneau ville (population, richesse, événements).
|
||
* **Clic alerte** : deep-link vers la ville concernée depuis une notification.
|
||
|
||
## 5. Annexes Techniques
|
||
|
||
### Données (JSON)
|
||
```json
|
||
{
|
||
"npc_id": "mayor_01",
|
||
"type": "maire",
|
||
"city_id": "uuid",
|
||
"name": "M. Dubois",
|
||
"state": "enum (IDLE, ANNOUNCING, NEGOTIATING)",
|
||
"current_event": "string | null"
|
||
}
|
||
```
|
||
|
||
### Règles Métier
|
||
* Les impacts annoncés par le maire doivent être **indexés** par la ville (population, richesse, distance, événement actif) conformément aux formules de `ville.md`.
|
||
* Pas de promesse “best effort” : si un événement est actif, il est listé, daté et son effet est explicite.
|
||
|
||
# Annexes UX/UI
|
||
|
||
## 0. Direction Artistique & Vue
|
||
* **Vue** : Carte monde (UI panneau + portrait).
|
||
* **Style** : Cohérent avec le thème (costume, écharpe, badge).
|
||
|
||
## Affichage contextuel (modules)
|
||
- **Ville** (`ville.md`) : sélection de ville, événements, variations de flux visiteurs.
|
||
- **Attractivité sur ville** (`attractivite_zoo_sur_ville.md`) : explication des variations de flux (si le module expose une UI).
|
||
|
||
## Skins & thèmes
|
||
* Variantes par thème (costume, palette) via `theme.md`.
|
||
* Accessoires via `inventaire_skins.md` si des skins “carte monde / ville” existent.
|