Checking it out. May not work. Not a Telegram.

This commit is contained in:
Nikhil Nagarajan 2025-12-10 15:57:46 -05:00
parent 09141053c9
commit e44823b6dd
6 changed files with 64 additions and 1 deletions

View file

@ -489,6 +489,18 @@ export const orderedArmorFeatures = () => {
return Object.values(all).sort((a, b) => game.i18n.localize(a.label).localeCompare(game.i18n.localize(b.label)));
};
export const armorPriorityKeys = {
armor: {label: 'DAGGERHEART.CONFIG.ArmorKeys.armor'},
weapon: {label: 'DAGGERHEART.CONFIG.ArmorKeys.weapon'},
consumable: {label: 'DAGGERHEART.CONFIG.ArmorKeys.consumable'},
loot: {label: 'DAGGERHEART.CONFIG.ArmorKeys.loot'},
features: {label: 'DAGGERHEART.CONFIG.ArmorKeys.features'}
}
export const allArmorKeys = () => {
return {...armorPriorityKeys};
}
export const weaponFeatures = {
barrier: {
label: 'DAGGERHEART.CONFIG.WeaponFeature.barrier.name',

View file

@ -31,6 +31,17 @@ export default class DHArmor extends AttachableItem {
actionIds: new fields.ArrayField(new fields.StringField({ required: true }))
})
),
//Testing new armor schema
armor: new fields.SchemaField({
value: new fields.NumberField({integer: true, min: 0, initial: 0}),
max: new fields.NumberField({ required: true, integer: true, min: 0, initial: 0}),
priority: new fields.StringField({
required: true,
choices: CONFIG.DH.ITEM.allArmorKeys,
initial: CONFIG.DH.ITEM.armorPriorityKeys[0]
})
}),
//End
marks: new fields.SchemaField({
value: new fields.NumberField({ initial: 0, integer: true })
}),

View file

@ -18,6 +18,17 @@ export default class DHConsumable extends BaseDataItem {
const fields = foundry.data.fields;
return {
...super.defineSchema(),
//Testing new armor schema
armor: new fields.SchemaField({
value: new fields.NumberField({integer: true, min: 0, initial: 0}),
max: new fields.NumberField({ required: true, integer: true, min: 0, initial: 0}),
priority: new fields.StringField({
required: true,
choices: CONFIG.DH.ITEM.allArmorKeys,
initial: CONFIG.DH.ITEM.armorPriorityKeys[0]
})
}),
//End
consumeOnUse: new fields.BooleanField({ initial: true }),
destroyOnEmpty: new fields.BooleanField({ initial: true })
};

View file

@ -16,7 +16,18 @@ export default class DHLoot extends BaseDataItem {
/** @inheritDoc */
static defineSchema() {
return {
...super.defineSchema()
...super.defineSchema(),
//Testing new armor schema
armor: new fields.SchemaField({
value: new fields.NumberField({integer: true, min: 0, initial: 0}),
max: new fields.NumberField({ required: true, integer: true, min: 0, initial: 0}),
priority: new fields.StringField({
required: true,
choices: CONFIG.DH.ITEM.allArmorKeys,
initial: CONFIG.DH.ITEM.armorPriorityKeys[0]
})
})
//End
};
}

View file

@ -18,6 +18,17 @@ export default class DHWeapon extends AttachableItem {
const fields = foundry.data.fields;
return {
...super.defineSchema(),
//Testing new armor schema
armor: new fields.SchemaField({
value: new fields.NumberField({integer: true, min: 0, initial: 0}),
max: new fields.NumberField({ required: true, integer: true, min: 0, initial: 0}),
priority: new fields.StringField({
required: true,
choices: CONFIG.DH.ITEM.allArmorKeys,
initial: CONFIG.DH.ITEM.armorPriorityKeys[0]
})
}),
//End
tier: new fields.NumberField({
required: true,
integer: true,