**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/*
110 lines
3.9 KiB
Markdown
110 lines
3.9 KiB
Markdown
# Spécifications : Achat et Upgrade des Camions
|
|
|
|
## Achat
|
|
- Le joueur possède un camion par défaut.
|
|
- Possibilité d'acheter des camions supplémentaires (si le design autorise plusieurs flottes).
|
|
- **Limite** : Nombre de camions limité par le niveau du Garage (si existant) ou du QG.
|
|
|
|
## Upgrade (7 Niveaux)
|
|
- **Niveau 1** : Camion standard.
|
|
- **Niveau 2-7** :
|
|
- **Vitesse** : Augmente la vitesse de déplacement sur la carte du monde (réduit le temps de mission).
|
|
- **Confort** : Réduit la perte de santé/stress des animaux transportés.
|
|
- **Capacité** : (Optionnel) Transport de plusieurs animaux ? *Actuellement 1 unité = 1 camion.*
|
|
- **Fiabilité** : Réduit les chances de panne (événement aléatoire "Retard").
|
|
|
|
# Annexes Techniques
|
|
|
|
## 1. Données et États
|
|
### Modèle de Données (Action)
|
|
```json
|
|
{
|
|
"action": "upgrade_truck",
|
|
"truck_id": "uuid",
|
|
"current_stats": { "speed": 50, "comfort": 10 },
|
|
"next_stats": { "speed": 60, "comfort": 20 },
|
|
"cost": 500
|
|
}
|
|
```
|
|
*Voir `camion.md` pour le modèle de données complet.*
|
|
|
|
## 7. Progression
|
|
### Tableau des Upgrades
|
|
*Voir `camion.md` pour le tableau détaillé des coûts et effets par niveau.*
|
|
|
|
## 8. Logique et Interfaces
|
|
### Pseudo-code
|
|
```python
|
|
def upgrade_truck(truck, player):
|
|
if truck.is_on_mission:
|
|
return error("TRUCK_BUSY", "Impossible d'améliorer un camion en mission.")
|
|
|
|
cost = get_upgrade_cost(truck.level + 1)
|
|
if player.money < cost:
|
|
return error("NO_MONEY")
|
|
|
|
player.money -= cost
|
|
truck.level += 1
|
|
truck.update_stats()
|
|
|
|
return success("TRUCK_UPGRADED")
|
|
```
|
|
|
|
### Cas Limites
|
|
- **Camion en mission** : Bouton upgrade désactivé avec message "En mission".
|
|
- **Niveau Max** : Afficher "Max" à la place du prix.
|
|
|
|
# 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)
|
|
### Garage / Atelier (Consultation)
|
|
**Description UX** : Le joueur gère sa flotte de camions.
|
|
**Description UI** : Liste des camions avec stats (Vitesse, Confort). Bouton "Améliorer".
|
|
**Emplacement** : Bâtiment Garage (si existe) ou Menu Transport.
|
|
**Intégration** : Modal.
|
|
**Navigation** : Menu -> Transport.
|
|
**Événements** : `OPEN_GARAGE`.
|
|
|
|
#### Assets
|
|
- **Musiques** : Radio "Trucker" (Rock instrumental léger).
|
|
- **Sons** : `wrench.mp3` (bruit d'outil).
|
|
- **Graphiques** : Fond garage.
|
|
- **Images** : Sprites Camions évolutifs (Vieux tacot -> Camion futuriste).
|
|
- **Vidéos** : Rotation 360° du modèle de camion.
|
|
- **Animations** : Étincelles de soudure.
|
|
- **Couleurs** : Gris, Métal.
|
|
- **Textes** : "Niveau X".
|
|
- **Formes** : Silhouettes de camions en arrière-plan.
|
|
|
|
### Customisation (Cosmétique)
|
|
**Description UX** : Changer la couleur du camion.
|
|
**Description UI** : Palette de couleurs.
|
|
**Emplacement** : Garage.
|
|
**Intégration** : Sélecteur.
|
|
**Navigation** : Clic Couleur -> Appliquer.
|
|
**Événements** : `PAINT_TRUCK`.
|
|
|
|
#### Assets
|
|
- **Musiques** : Bruit de spray "Pshhh" musical.
|
|
- **Sons** : `spray.mp3`.
|
|
- **Graphiques** : Pistolet peinture.
|
|
- **Images** : Nuancier de couleurs (Texture brillante).
|
|
- **Vidéos** : Reflet de lumière sur la carrosserie (shader).
|
|
- **Animations** : Camion change de couleur.
|
|
- **Couleurs** : Palette 16 couleurs.
|
|
- **Textes** : "Peinture fraîche !".
|
|
- **Formes** : Taches de peinture au sol.
|
|
|
|
### Vue Isométrique
|
|
- **Garage** : Si le garage est un bâtiment sur la carte, l'animation d'upgrade se joue dessus.
|
|
- **Carte Monde** : Le sprite du camion sur la carte du monde change pour refléter son niveau (ex: plus de fumée, design plus aérodynamique).
|