New robot stuff
All checks were successful
Release Creation / build (release) Successful in 1m15s

This commit is contained in:
2025-10-15 15:27:58 +02:00
parent 941db9436f
commit e65f0a1670
43 changed files with 2125 additions and 265 deletions

View File

@@ -63,7 +63,7 @@ export default class FTLNomadRoll extends Roll {
static updateFullFormula(options) {
let fullFormula
if (options.rollType === "damage") {
fullFormula = `${options.formula} + ${options.skillModifier}D6 `
fullFormula = `${options.formula} + ${options.damageModifier}D6 `
} else {
let mod = options.rollItem?.value || 0
fullFormula = `${options.formula} + ${options.skillModifier}D + ${mod} + ${options.rangeModifier}D + ${options.numericModifier}D`
@@ -125,11 +125,14 @@ export default class FTLNomadRoll extends Roll {
choiceRangeModifier[key] = { label: `${key} (${value}D)`, value: value }
}
}
const choiceDamageModifier = SYSTEM.DAMAGE_MODIFIER_CHOICES
let damageModifier = "0"
let modifier = "0"
options.skillModifier = 0
options.numericModifier = 0
options.rangeModifier = rangeModifier
options.damageModifier = damageModifier
let fullFormula = `${formula} + ${options.rollItem.value}`
if (options.isEncumbered) {
fullFormula += ` - 1D`
@@ -150,7 +153,9 @@ export default class FTLNomadRoll extends Roll {
fieldRollMode,
choiceModifier,
choiceRangeModifier,
choiceDamageModifier,
rangeModifier,
damageModifier,
formula,
hasTarget: options.hasTarget,
modifier,
@@ -184,6 +189,10 @@ export default class FTLNomadRoll extends Roll {
options.skillModifier = Number(event.target.value)
FTLNomadRoll.updateFullFormula(options)
})
$(".roll-damage-modifier").change(event => {
options.damageModifier = Number(event.target.value)
FTLNomadRoll.updateFullFormula(options)
})
$(".roll-skill-range-modifier").change(event => {
options.rangeModifier = Number(event.target.value)
FTLNomadRoll.updateFullFormula(options)
@@ -230,9 +239,13 @@ export default class FTLNomadRoll extends Roll {
// Replace the D6 by the correct number of D6
damageFormula = damageFormula.replace(/(\d*)d6/gi, (match, p1) => {
let numDice = Number(p1) || 1
numDice += Number(options.skillModifier)
//numDice += options?.finalModifier || 0
return `${numDice}d6 + ${mod}`
let damageModifier = Number(options.damageModifier)
let postArg = ""
if (damageModifier && damageModifier !== 0) {
postArg = (damageModifier > 0) ? `kh${numDice}` : `kl${numDice}`
numDice += Math.abs(damageModifier)
}
return `${numDice}d6${postArg} + ${mod}`
})
diceFormula = damageFormula
} else {