feat(traits): tâche 0 + phases 2-4 — automatisation complète des Traits

Tâche 0 :
- item.mjs : champ equipped sur items génériques + toggle fiche
- nouveau module/system/traits.mjs (helpers partagés : equippedItems, lourdMalus, mobilityHandicap, feticheItem…)

Phase 2 — Combat :
- Lourd : malus cumulés auto (Vigueur < n) dans le dialogue + pool
- Rapide : handicap (n) pré-rempli dans la défense (character + PNJ) + note carte
- Rafale : case tir en rafale (+2 difficulté), +n réussites si réussi (bonusOnSuccess)
- Portée : portée effective n × Vigueur affichée
- Maniable/Mobilité : note de rappel (dialogue + carte)
- Incapacitant : bouton « Jet de Santé (n) » sur la carte d'échange
- getLabel() : libellés caractéristiques/compétences localisés

Phase 3 — Jets d'action :
- Ponctuel : annule jusqu'à n Handicaps, consommé au jet (Traits supprimé à 0)
- Pratique : outil sélectionné +2D au lieu de +1D
- Intimidant : case « Brandit » → -1D Psychologie ou Relance 1D
- Malus : champ « Malus temporaires » manuel déduit du pool
- Durée : note « n tours » sur la carte de jet d'arme
- roll() : transmission effectiveRange/mobilityHandicap/ponctuelUsed/intimidant (corrige l'affichage Portée/Mobilité)

Phase 4 — Acteur :
- Fétiche : +1D Effort ET Sang-Froid (max dérivé, config corrigé), alerte 2+ fétiches, action « Perdre le fétiche » (-2D, max -1D persistant feticheLoss)
- Zone : note + bouton « Appliquer aux cibles de la zone » (#onApplyZone)

CSS : styles LESS pour les nouvelles classes (fetiche-block, exchange-reminder/zone, traits-reminder, tool-bonus/ponctuel, duree-note)
i18n : 29 clés fr/en
TRAITS_PLAN.md : plan complet cochée
This commit is contained in:
2026-08-07 15:30:41 +02:00
parent 8dd5d02994
commit ef01651b1d
21 changed files with 770 additions and 63 deletions
+29
View File
@@ -170,6 +170,35 @@
"reserves": "Réserves",
"dice_pool": "Pool de dés",
"pool_malus": "Malus Blessure",
"pool_wound": "Malus Blessure",
"pool_lourd": "Malus Lourd",
"lourd_malus_note": "Malus Lourd : -{malus}D (Vigueur insuffisante pour les objets Lourds équipés)",
"effective_range": "Portée effective",
"traits_mobility_note": "Handicap de Mobilité : +{handicap} (protections équipées non Maniables)",
"rafale_check": "Tir en rafale (Difficulté +2, +{rafaleValue} Réussites si réussi)",
"rapide_note": "Rapide ({handicap}) : le défenseur subit {handicap} Handicap(s)",
"incapacitant_roll": "Jet de Santé",
"intimidant": "Intimidant",
"intimidant_check": "Brandit ({intimidantName}) — Intimidant",
"intimidant_psychology": "Malus 1D (Psychologie)",
"intimidant_reroll": "Relance 1D",
"temporary_malus": "Malus temporaires",
"pool_temp_malus": "Malus temporaires",
"pool_psychology": "Malus Psychologie",
"ponctuel": "Ponctuel",
"ponctuel_used": "annule {value} Handicap(s)",
"duree": "Durée",
"duree_note": "effet pendant {value} tours de combat",
"fetiche": "Fétiche",
"fetiche_bonus": "Réserves d'Effort et de Sang-Froid +1D",
"fetiche_multiple": "Un même personnage ne peut posséder qu'un seul objet Fétiche",
"fetiche_none": "Aucun objet Fétiche équipé",
"fetiche_lost": "Fétiche perdu : Réserves 2D, max 1D",
"fetiche_lost_penalty": "Fétiche perdu : Réserves réduites de 1D",
"lose_fetiche": "Perdre le fétiche",
"zone_note": "Zone ({value} m) : tous les présents dans la zone subissent les Dommages",
"zone_apply": "Appliquer aux cibles de la zone",
"zone_applied": "Zone : {count} blessure(s) appliquée(s)",
"auto_successes": "réussites automatiques",
"self_control": "Sang-Froid",
"effort": "Effort",