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/*
This commit is contained in:
2026-03-05 02:10:32 +01:00
parent 1d3352455e
commit e92c1355d0
74 changed files with 1519 additions and 550 deletions

View File

@@ -1,24 +1,79 @@
# Spécifications : Achat et Upgrade des Boutiques
## Construction
- Peut être construite sur n'importe quelle case vide.
- Peut être construite sur n'importe quelle case vide de type "Terrain".
- Nécessite une connexion à un chemin pour être accessible aux visiteurs.
## Upgrade (7 Niveaux)
- **Attrait** : Attire les visiteurs de plus loin sur la grille.
- **Revenu** : Augmente le montant dépensé par chaque visiteur qui passe sur la case.
- **Capacité** : Augmente le nombre de visiteurs pouvant interagir simultanément.
- **Attrait** : Attire les visiteurs de plus loin sur la grille (Rayon d'action).
- **Revenu** : Augmente le montant dépensé par chaque visiteur qui passe sur la case (Multiplicateur de prix).
- **Capacité** : Augmente le nombre de visiteurs pouvant interagir simultanément (File d'attente).
# Annexes Techniques
## 1. Données et États
Voir `boutique.md` pour le modèle de données complet.
### Modèle de Données (Transaction Upgrade)
```json
{
"transaction_id": "uuid",
"building_id": "uuid",
"building_type": "shop",
"current_level": "integer",
"target_level": "integer",
"cost": "float",
"currency": "coins",
"status": "enum (PENDING, COMPLETED, FAILED)",
"timestamp": "timestamp"
}
```
*Voir `boutique.md` pour le modèle de données de l'entité Boutique.*
## 7. Progression
### Tableau des Upgrades
Voir `boutique.md` pour le tableau détaillé des coûts et effets par niveau.
*Voir `boutique.md` pour le tableau détaillé des coûts et effets par niveau.*
## 8. Logique et Interfaces
### Pseudo-code Interaction
```python
def upgrade_shop(shop, player_wallet):
# Vérification niveau max
if shop.level >= MAX_LEVEL:
return error("MAX_LEVEL_REACHED")
next_level_config = get_shop_config(shop.type, shop.level + 1)
cost = next_level_config.cost
# Vérification fonds
if player_wallet.coins < cost:
return error("INSUFFICIENT_FUNDS")
# Transaction
player_wallet.debit(cost)
shop.level += 1
shop.stats = next_level_config.stats
shop.visual_state = "UPGRADING" # Déclenche anim
start_upgrade_timer(shop, next_level_config.build_time)
return success("UPGRADE_STARTED")
```
### Cas Limites
- **Fonds insuffisants** : Bouton grisé + Tooltip rouge.
- **Upgrade en cours** : Impossible de lancer un autre upgrade tant que le précédent n'est pas fini.
- **Boutique utilisée** : L'upgrade n'éjecte pas les visiteurs actuels, mais bloque l'entrée de nouveaux pendant les travaux (si temps > 0).
# 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)
### Rénovation (Action)
**Description UX** : Améliorer la boutique change son apparence et ses stats.
@@ -38,3 +93,8 @@ Voir `boutique.md` pour le tableau détaillé des coûts et effets par niveau.
- **Couleurs** : Doré (pour les niveaux élevés).
- **Textes** : "Niveau Supérieur !".
- **Formes** : Particules Étoiles.
### Vue Isométrique
- **Travaux** : Si l'upgrade prend du temps, afficher un sprite "En travaux" (bâche, échafaudage) par-dessus la boutique.
- **Particules** : Lors de la complétion, explosion de confettis/étoiles en 3D isométrique au-dessus du toit.
- **Feedback** : Le bâtiment peut faire un petit saut (scale up/down) pour signifier l'upgrade.