# Spécifications : Billeterie ## Définition Bâtiment d'entrée du zoo. Point d'apparition et de départ des visiteurs. ## Fonctionnalités - **Entrée/Sortie** : Génère le flux de visiteurs. - **Vente de tickets** : Génère des revenus par visiteur entrant. - **Capacité** : Limite le nombre de visiteurs simultanés dans le zoo. ## Niveaux d'Amélioration (7 niveaux) - **Coût** : Progressif par palier. - **Effet** : Augmente le prix du ticket et la capacité maximale de visiteurs simultanés. - **Ratio** : 1 unité couvre 20 visiteurs simultanés max. # Annexes Techniques ## 1. Données et États ### Modèle de Données (JSON) ```json { "id": "uuid", "type": "ticket_booth", "level": "integer (1-7)", "position": { "x": "int", "y": "int" }, "stats": { "total_entries": "integer", "daily_revenue": "integer" } } ``` ### Caractéristiques Initiales | Caractéristique | Valeur Initiale (Niv 1) | | :--- | :--- | | Prix Ticket | 10 pièces | | Capacité Max | 20 visiteurs | ### Scores Initiaux N/A ## 2. Cycles de Vie et Apparition ### Conditions d'Apparition Présent au démarrage (Unique). ### Conditions de Disparition Indestructible. ### Hérédité N/A ## 3. Impacts Environnementaux ### Impact Température N/A ### Impact Milieu (Biome) N/A ### Impact Saisons | Saison | Modificateur Prix Ticket | | :--- | :--- | | Été | +20% (Haute saison) | | Hiver | -10% (Basse saison) | ### Impact Heure / Jour-Nuit **Ouverture** : 08h00 - 20h00. Fermé la nuit (sauf événements). ## 4. Impacts Biologiques et Sociaux ### Impact Reproduction N/A ### Impact Mort N/A ### Impact Nourriture N/A ### Impact Attractivité (Visiteurs/Animaux) Point d'entrée unique. L'attractivité globale du zoo détermine le flux qui se présente à la billeterie. ### Impact Valeur N/A ## 5. Impacts Logistiques et Économiques ### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite) **Flux Entrée** : 1 visiteur / seconde max. ### Dépenses (Boutiques/Visiteurs) Revenu principal (Ticket). ### Trajet Visiteurs Point de départ (Spawn) et d'arrivée (Despawn). ## 6. Événements ### Événements du Jeu / Carte / Zoo / Ville / Visiteur * **Entrée** : Gain pièces. * **Refoulement** : Si Capacité Max atteinte. ## 7. Progression ### Tableau des Upgrades | Niveau | Coût (Pièces) | Prix Ticket | Capacité Max | Temps Construction | | :--- | :--- | :--- | :--- | :--- | | 1 | 0 (Base) | 10 | 20 | 0s | | 2 | 200 | 12 | 40 | 0s | | 3 | 400 | 15 | 70 | 0s | | 4 | 800 | 18 | 110 | 0s | | 5 | 1600 | 22 | 160 | 0s | | 6 | 3200 | 28 | 220 | 0s | | 7 | 6400 | 35 | 300 | 0s | ## 8. Logique et Interfaces ### Pseudo-code Impacts ``` function processEntry(zoo): potentialVisitors = calculateAttractionFlow(zoo) if zoo.currentVisitors >= zoo.billeterie.capacity: emitEvent("ZOO_FULL") return actualVisitors = min(potentialVisitors, zoo.billeterie.capacity - zoo.currentVisitors) for i in 0..actualVisitors: spawnVisitor() player.addCoins(zoo.billeterie.ticketPrice) ``` ### Messages d'Infos / Alerte | ID | Niveau | Message | | :--- | :--- | :--- | | `ZOO_FULL` | Alerte | "Le zoo est complet ! Agrandissez la billeterie." | # Annexes UX/UI ## 1. Expérience Utilisateur (UX) ### Consultation **Description UX** : Le joueur clique sur la billeterie pour voir ses statistiques et son niveau. **Description UI** : **Bottom Sheet** ou Panneau Latéral affichant le niveau actuel, la capacité, le prix du ticket et les revenus du jour. **Emplacement** : Case Billeterie sur la grille du zoo. **Intégration** : Bâtiment fixe (ne peut pas être déplacé ou supprimé). **Navigation** : Clic -> Ouverture Panneau -> Fermeture (Croix ou clic extérieur). **Événements** : `CLICK_BILLETERIE`. #### Assets - **Musiques** : N/A - **Sons** : `ui_open.mp3` - **Graphiques** : Pixel Art, style guichet. - **Images** : `billeterie_lvl[1-7].png` - **Vidéos** : N/A - **Animations** : Légère surbrillance au survol. - **Couleurs** : Palette UI standard. - **Textes** : "Billeterie", "Niveau X", "Revenus : Y". - **Formes** : Carré (case). ### Amélioration (Upgrade) **Description UX** : Le joueur décide d'améliorer la billeterie pour augmenter la capacité et le prix du ticket. **Description UI** : Bouton "Améliorer" dans le panneau de consultation, avec coût et prévisualisation des gains. **Emplacement** : Panneau de consultation. **Intégration** : Action immédiate si fonds suffisants. **Navigation** : Clic "Améliorer" -> Confirmation (optionnelle) -> Mise à jour UI. **Événements** : `UPGRADE_BILLETERIE`. #### Assets - **Musiques** : N/A - **Sons** : `upgrade_success.mp3` (caisse enregistreuse). - **Graphiques** : Icône flèche vers le haut. - **Images** : N/A - **Vidéos** : N/A - **Animations** : Particules de succès (confettis/étoiles) autour du bâtiment. - **Couleurs** : Bouton Vert (si achetable), Gris (si fonds insuffisants). - **Textes** : "Améliorer (X pièces)". - **Formes** : Bouton rectangulaire arrondi. ### Flux Visiteurs (Passif) **Description UX** : Le joueur observe les visiteurs entrer dans le zoo. **Description UI** : Petits sprites de visiteurs apparaissant à la porte et se dispersant. **Emplacement** : Devant la billeterie. **Intégration** : Animation continue pendant les heures d'ouverture. **Navigation** : N/A **Événements** : `VISITOR_SPAWN`. #### Assets - **Musiques** : N/A - **Sons** : `visitor_entry.mp3` (bruit de foule léger, pas à chaque spawn). - **Graphiques** : Sprites visiteurs variés. - **Images** : N/A - **Vidéos** : N/A - **Animations** : Marche (4 directions). - **Couleurs** : Variées (vêtements). - **Textes** : N/A - **Formes** : N/A