Fix criticals roll
This commit is contained in:
@@ -183,19 +183,24 @@ export class RMFRPProcessTable {
|
||||
}
|
||||
let roll = new Roll("1d100")
|
||||
await roll.evaluate()
|
||||
await RMFRPUtility.showDiceSoNice(roll, game.settings.get("core", "rollMode"))
|
||||
let score = roll.total
|
||||
console.log("Critical Roll: ", score)
|
||||
// Search the result
|
||||
for (let criticalDef of table.criticals) {
|
||||
if (Number(criticalDef.score) ) {
|
||||
if (Number(criticalDef.score) == score) {
|
||||
return criticalDef.levels[criticalKey.toUpperCase()]
|
||||
let critDef = foundry.utils.duplicate(criticalDef.levels[criticalKey.toUpperCase()])
|
||||
critDef.diceResult = score
|
||||
return critDef
|
||||
}
|
||||
} else {
|
||||
// Score is XX-YY so split it to get the range values
|
||||
let range = criticalDef.score.split("-")
|
||||
if (Number(range[0]) <= score && score <= Number(range[1])) {
|
||||
return criticalDef.levels[criticalKey.toUpperCase()]
|
||||
let critDef = foundry.utils.duplicate(criticalDef.levels[criticalKey.toUpperCase()])
|
||||
critDef.diceResult = score
|
||||
return critDef
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user