# Phase 11 – Villes **Objectif :** Cases des villes sur la carte du monde avec nom et nombre maximum de visiteurs vers les zoos ; plafond ou répartition des visiteurs depuis les villes. **Référence :** `docs/plan-implementation-rappel-grandes-regles.md` phase 11. ## Dépendances - Phase 8 (Attractivité et visiteurs). ## Livrables (implémentés) - **Cases des villes :** Sur la carte du monde, chaque ville affiche le nom et le « nombre maximum de visiteurs vers les zoos » (`maxVisitorsTowardZoos`). Rendu : icône 🏙️ + libellé nom + ligne « max N ». - **Règle d'attraction :** Dans `getCityAttraction` (income.js), la contribution de chaque ville est plafonnée par `city.maxVisitorsTowardZoos` : `contrib = min(maxVisitorsTowardZoos, raw * 100)` avec `raw = 1/(1+distance)`, puis somme × `CityAttractionScale`. Les villes proches contribuent plus, sans dépasser leur plafond. ## Fichiers modifiés - **config.js** : `WorldMap.Cities[].maxVisitorsTowardZoos` (ex. 80, 100). - **income.js** : `getCityAttraction()` utilise le plafond par ville. - **ui.js** : Rendu des villes avec nom et « max N » ; tooltip et aria-label avec « max N visiteurs vers zoos ». - **main.css** : `.world-map-city-label`, `.world-map-city-max-visitors`. ## Phase précédente Phase 10 – Ventes et enchères : `docs/features/ventes-encheres-phase10.md`.