First row of tests and fixes

This commit is contained in:
2026-03-05 22:50:53 +01:00
parent 12458925a1
commit f28df2ae76
23 changed files with 442 additions and 126 deletions
+2 -2
View File
@@ -10,13 +10,13 @@ export default class AwEAbility extends foundry.abstract.TypeDataModel {
required: true,
nullable: false,
initial: "field",
choices: Object.keys(SYSTEM.ABILITY_TYPE)
choices: Object.fromEntries(Object.values(SYSTEM.ABILITY_TYPE).map(a => [a.id, a.label]))
})
schema.cost = new fields.StringField({
required: true,
nullable: false,
initial: "one",
choices: Object.keys(SYSTEM.ABILITY_COST)
choices: Object.fromEntries(Object.values(SYSTEM.ABILITY_COST).map(a => [a.id, a.label]))
})
schema.frequency = new fields.StringField({ initial: "", required: false, nullable: true })
schema.requirements = new fields.StringField({ initial: "", required: false, nullable: true })
-7
View File
@@ -63,12 +63,5 @@ export default class AwECharacter extends foundry.abstract.TypeDataModel {
attr.mod = level + attr.boostLevel + attr.bonus
attr.dc = 10 + attr.mod
}
// Compute max HP if not overridden
// Base HP = 10 + (level * 2) + fitness modifier
const fitnessMod = this.attributes.fitness.mod ?? 0
if (this.hp.max === 10) {
this.hp.max = 10 + (level * 2) + fitnessMod
}
}
}
+4 -3
View File
@@ -10,13 +10,14 @@ export default class AwEField extends foundry.abstract.TypeDataModel {
required: true,
nullable: false,
initial: "agility",
choices: Object.keys(SYSTEM.ATTRIBUTES)
choices: Object.fromEntries(Object.values(SYSTEM.ATTRIBUTES).map(a => [a.id, a.label]))
})
schema.keyAttribute2 = new fields.StringField({
required: false,
nullable: true,
initial: null,
choices: [...Object.keys(SYSTEM.ATTRIBUTES), null]
initial: "",
blank: true,
choices: { "": "—", ...Object.values(SYSTEM.ATTRIBUTES).reduce((o, a) => { o[a.id] = a.label; return o }, {}) }
})
schema.specializations = new fields.ArrayField(new fields.StringField())
schema.knowledgeBonus = new fields.StringField({ initial: "", required: false, nullable: true })
+1 -1
View File
@@ -14,7 +14,7 @@ export default class AwEWeapon extends foundry.abstract.TypeDataModel {
required: true,
nullable: false,
initial: "agility",
choices: Object.keys(SYSTEM.ATTRIBUTES)
choices: Object.fromEntries(Object.values(SYSTEM.ATTRIBUTES).map(a => [a.id, a.label]))
})
schema.traits = new fields.ArrayField(new fields.StringField())