feat: jets d'attaque depuis les armes (combat en opposition)

- Bouton ⚔ Attaquer sur chaque arme (onglet Équipement, mode Jeu)
- rollAttack(itemId) dans character.mjs : jet Échauffourée vs Corps PNJ
- Dialog combat : input numérique 'Corps du PNJ' à la place du sélect difficulté
- computeResult() : margin===0 → résultat 'tie' (égalité) en combat
- Mêlée échec → blessure joueur auto-cochée (comme résistance)
- Distance échec → simple raté, pas de blessure joueur
- Chat message : infos arme, bandeau égalité, desc succès/échec combat
- CSS : bandeau 'tie' (brun doré), zone arme dans dialog
- i18n : CELESTOPOL.Combat.* (attack, corpsPnj, tie, successHit, etc.)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-03-30 00:29:29 +02:00
parent 149d55dfa0
commit 79a68ee9ab
8 changed files with 210 additions and 23 deletions

View File

@@ -800,3 +800,61 @@
.wound-icon { font-size: 1em; }
}
}
// Bandeau "Égalité" en combat
.celestopol.chat-roll {
.roll-result-banner.tie {
background: #3a2e1a;
color: #d4b870;
border-top: 2px solid #7a6230;
border-bottom: 2px solid #7a6230;
text-shadow: 0 1px 2px rgba(0,0,0,0.6);
}
.weapon-info-header {
display: flex;
align-items: center;
gap: 0.3em;
margin-bottom: 1px;
font-size: 0.85em;
color: var(--cel-orange, #e07b00);
.weapon-icon-small { font-size: 0.9em; }
.weapon-degats-small {
font-weight: bold;
color: #f0c060;
}
}
}
// Zone arme dans le dialog (combat)
.fvtt-celestopol.roll-dialog {
.roll-weapon-line {
display: flex;
align-items: center;
gap: 0.4em;
margin-bottom: 2px;
font-size: 0.9em;
color: var(--cel-orange, #e07b00);
.weapon-icon { font-size: 1em; }
.weapon-degats {
font-weight: bold;
color: #f0c060;
font-size: 0.85em;
}
}
.form-corps-pnj {
.corps-pnj-input {
width: 70px;
font-size: 1.1em;
font-weight: bold;
text-align: center;
font-family: var(--cel-font-title, "CopaseticNF", serif);
background: rgba(0,0,0,0.3);
color: var(--cel-orange, #e07b00);
border: 1px solid var(--cel-orange, #e07b00);
border-radius: 4px;
padding: 2px 4px;
}
}
}