# Gestionnaire de Deck de Tarot

## Description

Le Gestionnaire de Deck de Tarot est une application V2 pour Foundry VTT qui permet au MJ de gérer un deck de cartes de tarot, de le mélanger, et de tirer des cartes qui sont automatiquement affichées dans le chat.

## Caractéristiques

- **Reset du Deck** : Réinitialise le deck avec toutes les cartes de tarot disponibles dans le monde et les mélange
- **Tirage de Cartes** : Possibilité de tirer 1, 3 ou 5 cartes à la fois
- **Affichage dans le Chat** : Chaque carte tirée est automatiquement postée dans le chat avec toutes ses informations
- **Historique** : Les 5 dernières cartes tirées sont affichées dans l'interface
- **Statistiques** : Affichage du nombre de cartes restantes dans le deck et du nombre de cartes tirées

## Utilisation

### Ouverture du Gestionnaire

Il existe plusieurs façons d'ouvrir le Gestionnaire de Deck de Tarot :

1. **Via les Scene Controls** : Cliquez sur l'icône de cartes dans la barre d'outils (disponible uniquement pour le MJ)
2. **Via la Console** : Exécutez `game.system.api.openTarotDeckManager()`
3. **Via une Macro** :
   ```javascript
   game.system.api.openTarotDeckManager()
   ```

### Actions Disponibles

- **Reset Deck** : Réinitialise complètement le deck et le mélange. Une confirmation est demandée pour éviter les erreurs
- **Draw 1 Card** : Tire une seule carte du deck
- **Draw 3 Cards** : Tire trois cartes du deck
- **Draw 5 Cards** : Tire cinq cartes du deck

### Prérequis

Le gestionnaire utilise les items de type "tarot" présents dans le monde. Assurez-vous d'avoir créé des cartes de tarot avant d'utiliser le gestionnaire.

## Structure Technique

### Fichiers créés

- `module/applications/tarot-deck-manager.mjs` : L'application V2 principale
- `templates/tarot-deck-manager.hbs` : Template Handlebars pour l'interface du gestionnaire
- `templates/chat-tarot-draw.hbs` : Template Handlebars pour l'affichage des cartes dans le chat
- `styles/tarot-deck-manager.less` : Styles pour le gestionnaire
- Mise à jour de `styles/chat.less` : Styles pour les messages de chat

### Intégration

L'application est exportée dans `module/applications/_module.mjs` et accessible via :
- `game.system.api.applications.HamalronTarotDeckManager`
- `game.system.api.openTarotDeckManager()` (fonction helper)

### Traductions

Toutes les chaînes sont localisées dans `lang/en.json` sous la clé `HAMALRON.TarotDeck`.

## Notes pour les Développeurs

- L'application utilise le pattern Singleton pour garantir qu'une seule instance est active
- Les cartes sont tirées du deck en utilisant l'algorithme de mélange Fisher-Yates
- Seul le MJ peut accéder au gestionnaire de deck
