Manage selective fire

This commit is contained in:
2025-06-15 00:30:24 +02:00
parent e0400793ff
commit 9e4d76298c
35 changed files with 654 additions and 122 deletions

View File

@ -25,6 +25,10 @@ export default class CthulhuEternalWeapon extends foundry.abstract.TypeDataModel
schema.armorPiercing = new fields.NumberField({ required: true, initial: 0, min: 0 })
schema.weaponSubtype = new fields.StringField({ required: true, initial: "basicfirearm", choices: SYSTEM.WEAPON_SUBTYPE })
schema.state = new fields.StringField({ required: true, initial: "pristine", choices: SYSTEM.EQUIPMENT_STATES })
schema.ammo = new fields.SchemaField({
value: new fields.NumberField({ ...requiredInteger, initial: 6, min: 0 }),
max: new fields.NumberField({ ...requiredInteger, initial: 6, min: 0 })
})
schema.resourceLevel = new fields.NumberField({ required: true, initial: 0, min: 0 })
@ -37,4 +41,12 @@ export default class CthulhuEternalWeapon extends foundry.abstract.TypeDataModel
get weaponCategory() {
return game.i18n.localize(CATEGORY[this.category].label)
}
isRanged() {
return this.weaponType.includes("ranged")
}
isFireArm() {
return this.weaponType === "rangedfirearm"
}
}