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

2.9 KiB

Spécifications : Achat et Upgrade des Nurseries

Construction

  • Nécessaire pour faire éclore plus d'œufs simultanément.
  • Peut être construite sur une case vide.

Upgrade (7 Niveaux)

  • Incubation : Réduit le temps d'éclosion.
  • Soins : Augmente les chances de survie des bébés (réduit l'impact des écarts de température).
  • Génétique : (Niveaux élevés) Augmente légèrement la probabilité d'obtenir une rareté supérieure (Shiny/Albinos).
  • Capacité : Débloque des slots d'incubation supplémentaires.

Annexes Techniques

1. Données et États

Modèle de Données (Action)

{
  "action": "upgrade_nursery",
  "building_id": "uuid",
  "unlocked_slots": 3,
  "incubation_speed_bonus": 0.2
}

Voir nurserie.md pour le modèle de données complet.

7. Progression

Tableau des Upgrades

Voir nurserie.md pour le tableau détaillé des coûts et effets par niveau.

8. Logique et Interfaces

Pseudo-code

def upgrade_nursery(nursery, player):
    cost = get_upgrade_cost("nursery", nursery.level + 1)
    
    if player.money < cost:
        return error("NO_MONEY")
        
    player.money -= cost
    nursery.level += 1
    
    # Déblocage de slots tous les 2 niveaux
    if nursery.level % 2 == 0:
        nursery.slots.append(create_empty_slot())
        
    return success("NURSERY_UPGRADED")

Cas Limites

  • Incubateurs pleins : L'upgrade n'affecte pas les œufs en cours (ou réduit leur temps restant proportionnellement).
  • Max Slots : Limité à 6 ou 8 slots max pour l'UI.

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)

Extension (Action)

Description UX : Ajouter des slots d'œufs. Description UI : La grille de slots s'agrandit (nouvelles cases déverrouillées). Emplacement : Modal Nurserie. Intégration : UI Grid. Navigation : Clic Nurserie -> Onglet Extension. Événements : UNLOCK_SLOT.

Assets

  • Musiques : Berceuse douce (boîte à musique).
  • Sons : unlock.mp3.
  • Graphiques : Cadenas qui s'ouvre.
  • Images : Icône "Œuf +" (Slot vide).
  • Vidéos : Rayon de lumière sur le nouveau slot.
  • Animations : Slot qui s'illumine.
  • Couleurs : Rose pastel et Bleu ciel.
  • Textes : "Slot débloqué".
  • Formes : Cercles doux (œufs).

Vue Isométrique

  • Taille : Le bâtiment peut s'agrandir visuellement (ajouter une aile) aux niveaux 3 et 5.
  • Fenêtres : On peut voir la lumière chaude à travers les fenêtres la nuit (incubateurs).