ENhance actor sheet with roll messages
This commit is contained in:
@@ -23,6 +23,8 @@ export default class AwERoll extends Roll {
|
||||
get damageType() { return this.options.damageType }
|
||||
get damageResult() { return this.options.damageResult }
|
||||
get damageCritical() { return this.options.damageCritical ?? false }
|
||||
get conditionBonus() { return this.options.conditionBonus ?? 0 }
|
||||
get conditionLabels() { return this.options.conditionLabels ?? [] }
|
||||
|
||||
// --- Outcome calculation ---
|
||||
|
||||
@@ -110,7 +112,7 @@ export default class AwERoll extends Roll {
|
||||
classes: ["awemmy"],
|
||||
content,
|
||||
render: (event, dialog) => {
|
||||
const baseMod = mod + attrBonus
|
||||
const baseMod = mod + attrBonus + (options.conditionBonus ?? 0)
|
||||
const el = dialog.element
|
||||
const bonusSelect = el.querySelector('#awe-bonus')
|
||||
const knowledgeSel = el.querySelector('#awe-knowledge')
|
||||
@@ -145,8 +147,8 @@ export default class AwERoll extends Roll {
|
||||
const dc = result.dc !== "" ? parseInt(result.dc) : undefined
|
||||
const rollMode = result.visibility ?? game.settings.get("core", "rollMode")
|
||||
|
||||
// Formula: 1d20 + (mod + attrBonus) [± bonus] [± knowledgeBonus]
|
||||
const totalMod = mod + attrBonus + bonus + knowledgeBonus
|
||||
// Formula: 1d20 + (mod + attrBonus) [± bonus] [± knowledgeBonus] [± conditionBonus]
|
||||
const totalMod = mod + attrBonus + bonus + knowledgeBonus + (options.conditionBonus ?? 0)
|
||||
let formula = `1d20`
|
||||
if (totalMod > 0) formula += ` + ${totalMod}`
|
||||
else if (totalMod < 0) formula += ` - ${Math.abs(totalMod)}`
|
||||
@@ -158,12 +160,16 @@ export default class AwERoll extends Roll {
|
||||
attributeBonus: attrBonus,
|
||||
bonus,
|
||||
knowledgeBonus,
|
||||
conditionBonus: options.conditionBonus ?? 0,
|
||||
conditionLabels: options.conditionLabels ?? [],
|
||||
dc,
|
||||
actorId: options.actorId,
|
||||
actorName: options.actorName,
|
||||
actorImage: options.actorImage,
|
||||
sourceItemName: options.sourceItemName,
|
||||
sourceItemImg: options.sourceItemImg
|
||||
sourceItemImg: options.sourceItemImg,
|
||||
damageFormula: options.damageFormula,
|
||||
damageType: options.damageType
|
||||
})
|
||||
|
||||
await roll.evaluate()
|
||||
@@ -211,13 +217,17 @@ export default class AwERoll extends Roll {
|
||||
modifier: this.modifier,
|
||||
bonus: this.bonus,
|
||||
knowledgeBonus: this.knowledgeBonus,
|
||||
conditionBonus: isPrivate ? null : this.conditionBonus,
|
||||
conditionLabels: this.conditionLabels,
|
||||
dice: this.dice,
|
||||
outcome: isPrivate ? null : this.outcome,
|
||||
dc: this.dc,
|
||||
actorId: this.actorId,
|
||||
actorName: this.actorName,
|
||||
actorImage: this.actorImage,
|
||||
sourceItemName: this.sourceItemName,
|
||||
sourceItemImg: this.sourceItemImg,
|
||||
damageFormula: this.damageFormula,
|
||||
damageResult: isPrivate ? null : this.damageResult,
|
||||
damageCritical: this.damageCritical,
|
||||
damageType: this.damageType,
|
||||
|
||||
Reference in New Issue
Block a user