# Suggestions d'amélioration #4 Basées sur l'analyse des rendus après suggestions_2 et suggestions_3. | # | Suggestion | Priorité | Statut | |---|-----------|----------|--------| | 1 | Localiser les noms de boîtes dans les événements du PlaythroughCapture | ★★★★★ | ✅ DONE | | 2 | Tronquer les noms trop longs incluant le préfixe "► " (26 chars réels) | ★★★★★ | ✅ DONE | | 3 | Panneau détails : ajouter un cas AdventureToken avec le nom d'aventure | ★★★★☆ | ✅ DONE | | 4 | Afficher la quantité restante dans le message de consommation | ★★★★☆ | ✅ DONE | | 5 | Localize the "Name" and "Qty" column headers in the inventory table | ★★★★☆ | ✅ DONE | | 6 | Panneau "???" avec headers localisés dans FullLayout | ★★★☆☆ | | | 7 | Afficher la progression globale dans le header de l'inventaire interactif | ★★★☆☆ | | | 8 | Grouper les boîtes identiques dans le loot reveal (× N) | ★★☆☆☆ | | | 9 | Ajouter un son de notification pour les lore fragments | ★★☆☆☆ | | | 10 | Indicateur d'items actionnables dans la liste (★ à côté des consommables/lore) | ★★☆☆☆ | | --- ## 1. Localiser les noms de boîtes dans les événements du PlaythroughCapture — ★★★★★ **Constat** : Le test PlaythroughCapture affiche `Received [Common] "box_of_boxes"` au lieu du nom localisé. Le code de test utilise `ire.Item.DefinitionId` directement pour les boîtes au lieu de résoudre via le registre. **Solution** : Utiliser le même pattern que `GetLocalizedName()` dans le test PlaythroughCapture. ## 2. Tronquer les noms incluant le préfixe "► " — ★★★★★ **Constat** : Le nom sélectionné a un préfixe "► " (2 chars de plus), mais la troncature se fait à MaxNameWidth (24) sur le nom seul. Avec le préfixe, le nom effectif est 26 chars, ce qui peut déborder de la colonne. **Solution** : Ajuster la troncature pour tenir compte du préfixe dans la colonne, ou augmenter la largeur de la colonne Name. ## 3. Panneau détails AdventureToken — ★★★★☆ **Constat** : Les items AdventureToken (badge spatial, boussole pirate, etc.) n'ont pas d'information contextuelle dans le panneau de détails. L'aventure associée n'est pas mentionnée. **Solution** : Ajouter un cas `AdventureToken` dans `RenderDetailPanel()` qui affiche le nom de l'aventure liée. ## 4. Afficher la quantité restante après consommation — ★★★★☆ **Constat** : Quand on consomme un item, le message dit juste "Ration alimentaire utilisé !". On ne sait pas combien il en reste. **Solution** : Ajouter "× N restant(s)" au message de consommation dans HandleInventoryAction. ## 5. Localiser les en-têtes de colonnes de l'inventaire — ★★★★☆ **Constat** : Les colonnes "Name", "Rarity" et "Qty" sont en anglais dans la table d'inventaire. **Solution** : Utiliser des clés de localisation `inventory.col.name`, `inventory.col.rarity`, `inventory.col.qty`. ## 6. Panneau "???" localisé dans FullLayout — ★★★☆☆ **Constat** : Les panneaux pas encore débloqués dans le FullLayout affichent un header anglais. **Solution** : Localiser les headers "Stats", "Resources", "Inventory" dans les panels placeholder. ## 7. Progression globale dans l'inventaire interactif — ★★★☆☆ **Constat** : L'inventaire interactif ne montre pas de contexte sur la progression globale du joueur. **Solution** : Optionnel — afficher le nombre de boîtes ouvertes ou le % de complétion dans le header. ## 8. Grouper les boîtes dans le loot reveal — ★★☆☆☆ **Constat** : Quand plusieurs boîtes identiques sont obtenues, elles apparaissent chacune sur une ligne séparée. **Solution** : Grouper par nom et ajouter un "× N" pour les doublons. ## 9. Son pour les lore fragments — ★★☆☆☆ **Constat** : Recevoir un fragment de lore est un moment clé de l'expérience narrative mais il passe inaperçu. **Solution** : Console.Beep sur Windows comme pour les Music items. ## 10. Indicateur d'items actionnables — ★★☆☆☆ **Constat** : Dans l'inventaire, rien ne distingue visuellement les items sur lesquels on peut agir (consommables, lore) des items passifs. **Solution** : Ajouter un petit marqueur (★ ou ►) à côté des items actionnables.