Various fixes and add rune support

This commit is contained in:
2026-03-30 23:38:45 +02:00
parent 2bf737a3ef
commit fb04448ab0
18 changed files with 506 additions and 9 deletions

View File

@@ -1,4 +1,4 @@
import { SYSTEM } from "../config/system.mjs"
import { CLASS_RESTRICTION_CHOICES, SYSTEM } from "../config/system.mjs"
export default class OathHammerMagicItem extends foundry.abstract.TypeDataModel {
static defineSchema() {
@@ -27,7 +27,7 @@ export default class OathHammerMagicItem extends foundry.abstract.TypeDataModel
schema.isBonded = new fields.BooleanField({ initial: false })
// Class/lineage restriction printed in the item's type line, e.g. "Troubadour Only"
schema.classRestriction = new fields.StringField({ required: true, nullable: false, initial: "" })
schema.classRestriction = new fields.StringField({ required: false, nullable: true, initial: null, choices: CLASS_RESTRICTION_CHOICES })
// Limited-use items (e.g. "once per day"); none = always active
schema.usagePeriod = new fields.StringField({
@@ -39,6 +39,9 @@ export default class OathHammerMagicItem extends foundry.abstract.TypeDataModel
schema.equipped = new fields.BooleanField({ initial: false })
// Attached runic spells — only for talisman subtype (max 2; snapshot of spell item)
schema.runes = new fields.ArrayField(new fields.ObjectField(), { required: true, initial: [] })
return schema
}