Correction initiative et meilleur affichage sur jet D20
All checks were successful
Release Creation / build (release) Successful in 51s

This commit is contained in:
2026-03-10 20:50:43 +01:00
parent f0a74d5daa
commit 71b384c963
101 changed files with 287 additions and 240 deletions

View File

@@ -370,7 +370,7 @@ export class HawkmoonUtility {
if (rollData.mainDice.includes("d20")) {
let diceValue = rollData.roll.terms[0].results[0].result
if (diceValue % 2 == 1) {
//console.log("PAIR/IMP2", diceValue)
rollData.isD20Impair = true
rollData.finalResult -= rollData.roll.terms[0].results[0].result // Substract value
if (diceValue == 1 || diceValue == 11) {
rollData.isDramatique = true
@@ -395,8 +395,8 @@ export class HawkmoonUtility {
/* -------------------------------------------- */
static applyCombativite(rollData, value) {
if (game.user.isGM) {
let defender = game.canvas.tokens.get(rollData.defenderTokenId).actor
defender.changeEtatCombativite(value)
let defender = game.canvas.tokens.get(rollData.defenderTokenId)?.actor
defender?.changeEtatCombativite(value)
} else {
game.socket.emit("system.fvtt-hawkmoon-cyd", { msg: "msg_apply_combativite", data: { defenderTokenId: rollData.defenderTokenId, value } });
}
@@ -450,6 +450,9 @@ export class HawkmoonUtility {
rollData.diceFormula += `+${rollData.attr.value}+${rollData.attr2.value}+${rollData.modificateur}`
} else {
rollData.diceFormula += `+${rollData.attr.value}*${rollData.multiplier}+${rollData.modificateur}`
if (rollData.isInit && rollData.initbonus) {
rollData.diceFormula += `+${rollData.initbonus}`
}
}
// Bonus arme naturelle en défense
@@ -535,8 +538,8 @@ export class HawkmoonUtility {
this.applyCombativite(rollData, rollData.nbCombativitePerdu)
}
if (rollData.coupBas && rollData.isSuccess && rollData.defenderTokenId) {
let defender = game.canvas.tokens.get(rollData.defenderTokenId).actor
defender.incDecAdversite("bleue", -2)
let defender = game.canvas.tokens.get(rollData.defenderTokenId)?.actor
defender?.incDecAdversite("bleue", -2)
}
}
@@ -705,7 +708,8 @@ export class HawkmoonUtility {
}
// Utiliser la cible déjà enregistrée si aucune cible n'est actuellement sélectionnée
if (rollData.defenderTokenId) {
let defender = game.canvas.tokens.get(rollData.defenderTokenId).actor
let defender = game.canvas.tokens.get(rollData.defenderTokenId)?.actor
if (!defender) return
console.log("updateWithTarget - Defender actor:", defender.name)
rollData.armeDefense = defender.getBestDefenseValue()
console.log("updateWithTarget - armeDefense:", rollData.armeDefense)