Amélioration de la gestion de la surprise

This commit is contained in:
2025-09-22 16:18:29 +02:00
parent c84af21c7e
commit 74515d28f4
14 changed files with 129 additions and 131 deletions

View File

@@ -39,8 +39,7 @@ export class RollPartSign extends RollPart {
const isCombat = this.isCombat(rollData)
const current = this.getCurrent(rollData)
current.armeDisparate = isCombat && current.armeDisparate
current.forceRequise = current.forceRequise ?? 0
current.surprise = actor.getSurprise(isCombat)
current.surprise = actor.getSurprise(isCombat) // TODO: could be from rollData.active.surprise??
current.reasons = actor.getEffects(it => StatusEffects.niveauSurprise(it) > 0).map(it => it.name)
current.diviseur = 1
if (current.surprise == 'demi') {
@@ -53,10 +52,6 @@ export class RollPartSign extends RollPart {
current.diviseur *= 2
current.reasons.push('Armes disparates')
}
if (this.isForceInsuffisante(actor, current)) {
current.diviseur *= 2
current.reasons.push('Force insuffisante')
}
if (this.isAttaqueFinesse(rollData)) {
current.diviseur *= 2
current.reasons.push('Particulière en finesse')
@@ -73,15 +68,6 @@ export class RollPartSign extends RollPart {
return ROLL_MODE_DEFENSE == rollData.mode.current && rollData.attaque.particuliere == 'finesse'
}
isForceInsuffisante(actor, current) {
if (actor?.isPersonnage()) {
const requise = current.forceRequise
const force = parseInt(actor.system.carac.force.value)
return requise > force
}
return false
}
isParadeArmeDisparate(current) {
return current.armeDisparate
}
@@ -106,9 +92,7 @@ export class RollPartSign extends RollPart {
})
}
setArme(rollData, forceRequise, armeDisparate) {
const current = this.getCurrent(rollData)
current.armeDisparate = armeDisparate
current.forceRequise = forceRequise
setArmeDisparate(rollData, armeDisparate) {
this.getCurrent(rollData).armeDisparate = armeDisparate
}
}