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

166 lines
4.3 KiB
Markdown

# Spécifications : Vente aux Enchères de Bébés
## Définition
Processus de vente spécifique pour les bébés animaux nés dans le zoo.
## Spécificités
- **Forte Valeur** : Les bébés ont souvent une valeur supérieure aux adultes car ils ont tout leur potentiel de vie et de reproduction devant eux.
- **Fragilité** : Un bébé mis en vente doit être vendu rapidement.
- **Risque** : Si l'enchère échoue ou dure trop longtemps sans acheteur, le bébé risque de mourir dans le camion ou la zone de vente (faim/froid).
## Processus
1. Sélection du bébé en Nurserie ou sur la grille.
2. Glisser-déposer vers la zone Camion.
3. Définition du prix de départ.
4. Apparition sur la Carte du Monde.
5. Si vendu : Transfert après délai de 10 min.
6. Si invendu : Retour nécessaire en Nurserie ou Mort.
# Annexes Techniques
## 1. Données et États
### Modèle de Données (JSON)
```json
{
"id": "uuid",
"seller_id": "uuid",
"animal_id": "uuid",
"start_price": "int",
"current_bid": "int",
"highest_bidder": "uuid | null",
"end_time": "timestamp",
"status": "active | sold | expired",
"iso_x": "integer",
"iso_y": "integer",
"z_index": "integer"
}
```
### Caractéristiques Initiales
| Caractéristique | Valeur |
| :--- | :--- |
| Durée Enchère | 1h - 24h (au choix) |
| Délai Validation | 10 min (fixe) |
### Scores Initiaux
N/A
## 2. Cycles de Vie et Apparition
### Conditions d'Apparition
Action joueur.
### Conditions de Disparition
Vente ou Expiration.
### Hérédité
N/A
## 3. Impacts Environnementaux
### Impact Température
N/A
### Impact Milieu (Biome)
N/A
### Impact Saisons
N/A
### Impact Heure / Jour-Nuit
N/A
## 4. Impacts Biologiques et Sociaux
### Impact Reproduction
N/A
### Impact Mort
**Risque** : Si `status == expired` et non récupéré sous 1h -> Mort du bébé.
### Impact Nourriture
N/A
### Impact Attractivité (Visiteurs/Animaux)
N/A
### Impact Valeur
**Dépréciation** : Aucune (c'est une enchère).
## 5. Impacts Logistiques et Économiques
### Vitesse (Camion/Nurserie/Accueil/Recherche/Labo/Visite)
N/A
### Dépenses (Boutiques/Visiteurs)
N/A
### Trajet Visiteurs
N/A
## 6. Événements
### Événements du Jeu / Carte / Zoo / Ville / Visiteur
* **Nouvelle Enchère** : Notification.
* **Surenchère** : Notification vendeur.
* **Vente Terminée** : Notification.
## 7. Progression
### Tableau des Upgrades
N/A
## 8. Logique et Interfaces
### Pseudo-code Impacts
N/A
### Messages d'Infos / Alerte
| ID | Niveau | Message |
| :--- | :--- | :--- |
| `AUCTION_SOLD` | Succès | "Bébé vendu !" |
| `AUCTION_FAIL` | Alerte | "Enchère terminée sans acheteur. Récupérez le bébé !" |
# 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)
### Mise en Vente (Action)
**Description UX** : Le joueur glisse un bébé depuis la nurserie vers le camion.
**Description UI** : **Bottom Sheet** de configuration "Vendre ce bébé". Choix du prix de départ et de la durée.
**Emplacement** : Zoo -> Modal Vente.
**Intégration** : Formulaire.
**Navigation** : Drag -> Config -> Valider.
**Événements** : `CREATE_AUCTION`.
#### Assets
- **Musiques** : N/A
- **Sons** : `cash_register_open.mp3`.
- **Graphiques** : Icône Bourse/Pièce.
- **Images** : Portrait Bébé.
- **Vidéos** : N/A
- **Animations** : N/A
- **Couleurs** : Or.
- **Textes** : "Prix de départ", "Durée".
- **Formes** : Champs de saisie.
### Suivi Vente (Passif)
**Description UX** : Le joueur voit son offre active sur son propre zoo (Carte Monde) ou dans son menu "Ventes".
**Description UI** : Liste "Mes Ventes". Compteur d'enchères reçues.
**Emplacement** : Menu Gestion -> Ventes.
**Intégration** : Liste.
**Navigation** : Menu -> Ventes.
**Événements** : `OPEN_MY_SALES`.
#### Assets
- **Musiques** : N/A
- **Sons** : `notification.mp3` (si offre reçue).
- **Graphiques** : N/A
- **Images** : N/A
- **Vidéos** : N/A
- **Animations** : N/A
- **Couleurs** : N/A
- **Textes** : "Meilleure offre : X".
- **Formes** : N/A