forked from public/foundryvtt-reve-de-dragon
Gestion des significatives
This commit is contained in:
@@ -26,7 +26,7 @@ export class RollBasicParts {
|
||||
static loadSurprise(who, forceRequise) {
|
||||
if (who?.actor) {
|
||||
foundry.utils.mergeObject(who,
|
||||
StatusEffects.getActorEffetSurprise(who.actor, forceRequise),
|
||||
StatusEffects.getActorEffetSurprise(who.actor),
|
||||
{ overwrite: true, inPlace: true })
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import { PART_CARAC } from "./roll-part-carac.mjs"
|
||||
import { PART_COMP } from "./roll-part-comp.mjs"
|
||||
import { PART_DIFF } from "./roll-part-diff.mjs"
|
||||
import { RollPartSelect } from "./roll-part-select.mjs"
|
||||
import { PART_SIGN } from "./roll-part-sign.mjs"
|
||||
import { ROLLDIALOG_SECTION } from "./roll-part.mjs"
|
||||
|
||||
export const PART_ATTAQUE = 'attaque'
|
||||
@@ -111,7 +112,9 @@ export class RollPartAttaque extends RollPartSelect {
|
||||
part.setDiff(rollData, { type: DIFF.ATTAQUE, value: current.initialDiff })
|
||||
current.initialDiff = undefined
|
||||
}
|
||||
break
|
||||
}
|
||||
case PART_SIGN: return part.setArme(rollData, false, current.forceRequise)
|
||||
}
|
||||
}
|
||||
return undefined
|
||||
|
||||
@@ -101,7 +101,7 @@ export class RollPartDefense extends RollPartSelect {
|
||||
case PART_CARAC: return part.filterCaracs(rollData, [current.carac])
|
||||
case PART_COMP: return part.filterComps(rollData, [current.comp?.name])
|
||||
case PART_DIFF: return part.setDiff(rollData, this.getDiffDefense(rollData))
|
||||
case PART_SIGN: return part.setArmeDisparate(rollData, this.isArmeDisparate(rollData))
|
||||
case PART_SIGN: return part.setArme(rollData, this.isArmeDisparate(rollData), current.forceRequise)
|
||||
}
|
||||
}
|
||||
return undefined
|
||||
|
||||
@@ -40,8 +40,8 @@ export class RollPartSign extends RollPart {
|
||||
const isCombat = this.isCombat(rollData)
|
||||
const current = this.getCurrent(rollData)
|
||||
current.armeDisparate = isCombat && current.armeDisparate
|
||||
current.surprise = actor.getSurprise(isCombat) // TODO: could be from rollData.active.surprise??
|
||||
current.reasons = actor.getEffects(it => StatusEffects.niveauSurprise(it) > 0)
|
||||
current.surprise = actor.getSurprise(isCombat, current.forceRequise ?? 0)
|
||||
current.reasons = actor.getEffects(it => StatusEffects.niveauSurprise(it, isCombat) > 0, current.forceRequise ?? 0)
|
||||
.map(it => { return { img: it.img, label: game.i18n.localize(it.name) } })
|
||||
current.diviseur = 1
|
||||
if (current.surprise == 'demi') {
|
||||
@@ -102,7 +102,9 @@ export class RollPartSign extends RollPart {
|
||||
})
|
||||
}
|
||||
|
||||
setArmeDisparate(rollData, armeDisparate) {
|
||||
this.getCurrent(rollData).armeDisparate = armeDisparate
|
||||
setArme(rollData, armeDisparate, forceRequise) {
|
||||
const current = this.getCurrent(rollData)
|
||||
current.armeDisparate = armeDisparate
|
||||
current.forceRequise = forceRequise
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user