mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-12 03:31:07 +01:00
Fix Class HitPoints and ComainConfig (#190)
* Added HitPoints on class for use on character * Updated DomainConfig to use the official domain icons
This commit is contained in:
parent
c6cede40b2
commit
30ab18d683
5 changed files with 26 additions and 18 deletions
|
|
@ -1295,6 +1295,7 @@
|
||||||
"Severe": "Severe"
|
"Severe": "Severe"
|
||||||
},
|
},
|
||||||
"Evasion": "Evasion",
|
"Evasion": "Evasion",
|
||||||
|
"HitPoints": "Hit Points",
|
||||||
"ClassFeatures": "Class Features",
|
"ClassFeatures": "Class Features",
|
||||||
"Subclasses": "Subclasses",
|
"Subclasses": "Subclasses",
|
||||||
"Guide": {
|
"Guide": {
|
||||||
|
|
|
||||||
|
|
@ -2,56 +2,55 @@ export const domains = {
|
||||||
arcana: {
|
arcana: {
|
||||||
id: 'arcana',
|
id: 'arcana',
|
||||||
label: 'DAGGERHEART.Domains.arcana.label',
|
label: 'DAGGERHEART.Domains.arcana.label',
|
||||||
src: 'icons/magic/symbols/circled-gem-pink.webp',
|
src: 'systems/daggerheart/assets/icons/domains/arcana.svg',
|
||||||
description: 'DAGGERHEART.Domains.Arcana'
|
description: 'DAGGERHEART.Domains.Arcana'
|
||||||
},
|
},
|
||||||
blade: {
|
blade: {
|
||||||
id: 'blade',
|
id: 'blade',
|
||||||
label: 'DAGGERHEART.Domains.blade.label',
|
label: 'DAGGERHEART.Domains.blade.label',
|
||||||
src: 'icons/weapons/swords/sword-broad-crystal-paired.webp',
|
src: 'systems/daggerheart/assets/icons/domains/blade.svg',
|
||||||
description: 'DAGGERHEART.Domains.Blade'
|
description: 'DAGGERHEART.Domains.Blade'
|
||||||
},
|
},
|
||||||
bone: {
|
bone: {
|
||||||
id: 'bone',
|
id: 'bone',
|
||||||
label: 'DAGGERHEART.Domains.bone.label',
|
label: 'DAGGERHEART.Domains.bone.label',
|
||||||
src: 'icons/skills/wounds/bone-broken-marrow-red.webp',
|
src: 'systems/daggerheart/assets/icons/domains/bone.svg',
|
||||||
description: 'DAGGERHEART.Domains.Bone'
|
description: 'DAGGERHEART.Domains.Bone'
|
||||||
},
|
},
|
||||||
codex: {
|
codex: {
|
||||||
id: 'codex',
|
id: 'codex',
|
||||||
label: 'DAGGERHEART.Domains.codex.label',
|
label: 'DAGGERHEART.Domains.codex.label',
|
||||||
src: 'icons/sundries/books/book-embossed-jewel-gold-purple.webp',
|
src: 'systems/daggerheart/assets/icons/domains/codex.svg',
|
||||||
description: 'DAGGERHEART.Domains.Codex'
|
description: 'DAGGERHEART.Domains.Codex'
|
||||||
},
|
},
|
||||||
grace: {
|
grace: {
|
||||||
id: 'grace',
|
id: 'grace',
|
||||||
label: 'DAGGERHEART.Domains.grace.label',
|
label: 'DAGGERHEART.Domains.grace.label',
|
||||||
src: 'icons/skills/movement/feet-winged-boots-glowing-yellow.webp',
|
src: 'systems/daggerheart/assets/icons/domains/grace.svg',
|
||||||
description: 'DAGGERHEART.Domains.Grace'
|
description: 'DAGGERHEART.Domains.Grace'
|
||||||
},
|
},
|
||||||
midnight: {
|
midnight: {
|
||||||
id: 'midnight',
|
id: 'midnight',
|
||||||
label: 'DAGGERHEART.Domains.midnight.label',
|
label: 'DAGGERHEART.Domains.midnight.label',
|
||||||
src: 'icons/environment/settlement/watchtower-castle-night.webp',
|
src: 'systems/daggerheart/assets/icons/domains/midnight.svg',
|
||||||
background: 'systems/daggerheart/assets/backgrounds/MidnightBackground.webp',
|
|
||||||
description: 'DAGGERHEART.Domains.Midnight'
|
description: 'DAGGERHEART.Domains.Midnight'
|
||||||
},
|
},
|
||||||
sage: {
|
sage: {
|
||||||
id: 'sage',
|
id: 'sage',
|
||||||
label: 'DAGGERHEART.Domains.sage.label',
|
label: 'DAGGERHEART.Domains.sage.label',
|
||||||
src: 'icons/sundries/misc/pipe-wooden-straight-brown.webp',
|
src: 'systems/daggerheart/assets/icons/domains/sage.svg',
|
||||||
description: 'DAGGERHEART.Domains.Sage'
|
description: 'DAGGERHEART.Domains.Sage'
|
||||||
},
|
},
|
||||||
splendor: {
|
splendor: {
|
||||||
id: 'splendor',
|
id: 'splendor',
|
||||||
label: 'DAGGERHEART.Domains.splendor.label',
|
label: 'DAGGERHEART.Domains.splendor.label',
|
||||||
src: 'icons/magic/control/control-influence-crown-gold.webp',
|
src: 'systems/daggerheart/assets/icons/domains/splendor.svg',
|
||||||
description: 'DAGGERHEART.Domains.Splendor'
|
description: 'DAGGERHEART.Domains.Splendor'
|
||||||
},
|
},
|
||||||
valor: {
|
valor: {
|
||||||
id: 'valor',
|
id: 'valor',
|
||||||
label: 'DAGGERHEART.Domains.valor.label',
|
label: 'DAGGERHEART.Domains.valor.label',
|
||||||
src: 'icons/magic/control/control-influence-rally-purple.webp',
|
src: 'systems/daggerheart/assets/icons/domains/valor.svg',
|
||||||
description: 'DAGGERHEART.Domains.Valor'
|
description: 'DAGGERHEART.Domains.Valor'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,10 @@ export default class DhCharacter extends BaseDataActor {
|
||||||
|
|
||||||
return {
|
return {
|
||||||
resources: new fields.SchemaField({
|
resources: new fields.SchemaField({
|
||||||
hitPoints: resourceField(6),
|
hitPoints: new fields.SchemaField({
|
||||||
|
value: new foundry.data.fields.NumberField({ initial: 0, integer: true }),
|
||||||
|
bonus: new foundry.data.fields.NumberField({ initial: 0, integer: true })
|
||||||
|
}),
|
||||||
stress: resourceField(6),
|
stress: resourceField(6),
|
||||||
hope: resourceField(6)
|
hope: resourceField(6)
|
||||||
}),
|
}),
|
||||||
|
|
@ -243,7 +246,7 @@ export default class DhCharacter extends BaseDataActor {
|
||||||
experience.total = experience.value + experience.bonus;
|
experience.total = experience.value + experience.bonus;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.resources.hitPoints.maxTotal = this.resources.hitPoints.max + this.resources.hitPoints.bonus;
|
this.resources.hitPoints.maxTotal = (this.class.value?.system?.hitPoints ?? 0) + this.resources.hitPoints.bonus;
|
||||||
this.resources.stress.maxTotal = this.resources.stress.max + this.resources.stress.bonus;
|
this.resources.stress.maxTotal = this.resources.stress.max + this.resources.stress.bonus;
|
||||||
this.evasion.total = (this.class?.evasion ?? 0) + this.evasion.bonus;
|
this.evasion.total = (this.class?.evasion ?? 0) + this.evasion.bonus;
|
||||||
this.proficiency.total = this.proficiency.value + this.proficiency.bonus;
|
this.proficiency.total = this.proficiency.value + this.proficiency.bonus;
|
||||||
|
|
|
||||||
|
|
@ -20,8 +20,14 @@ export default class DHClass extends BaseDataItem {
|
||||||
...super.defineSchema(),
|
...super.defineSchema(),
|
||||||
domains: new fields.ArrayField(new fields.StringField(), { max: 2 }),
|
domains: new fields.ArrayField(new fields.StringField(), { max: 2 }),
|
||||||
classItems: new ForeignDocumentUUIDArrayField({ type: 'Item', required: false }),
|
classItems: new ForeignDocumentUUIDArrayField({ type: 'Item', required: false }),
|
||||||
|
hitPoints: new fields.NumberField({
|
||||||
evasion: new fields.NumberField({ initial: 0, integer: true }),
|
required: true,
|
||||||
|
integer: true,
|
||||||
|
min: 1,
|
||||||
|
initial: 5,
|
||||||
|
label: 'DAGGERHEART.Sheets.Class.HitPoints'
|
||||||
|
}),
|
||||||
|
evasion: new fields.NumberField({ initial: 0, integer: true, label: 'DAGGERHEART.Sheets.Class.Evasion' }),
|
||||||
hopeFeatures: new foundry.data.fields.ArrayField(new ActionField()),
|
hopeFeatures: new foundry.data.fields.ArrayField(new ActionField()),
|
||||||
classFeatures: new foundry.data.fields.ArrayField(new ActionField()),
|
classFeatures: new foundry.data.fields.ArrayField(new ActionField()),
|
||||||
subclasses: new ForeignDocumentUUIDArrayField({ type: 'Item', required: false }),
|
subclasses: new ForeignDocumentUUIDArrayField({ type: 'Item', required: false }),
|
||||||
|
|
|
||||||
|
|
@ -3,11 +3,10 @@
|
||||||
data-tab='{{tabs.settings.id}}'
|
data-tab='{{tabs.settings.id}}'
|
||||||
data-group='{{tabs.settings.group}}'
|
data-group='{{tabs.settings.group}}'
|
||||||
>
|
>
|
||||||
|
<fieldset class="two-columns even">
|
||||||
<fieldset class="two-columns">
|
|
||||||
<legend>{{localize tabs.settings.label}}</legend>
|
<legend>{{localize tabs.settings.label}}</legend>
|
||||||
<span>{{localize "DAGGERHEART.Sheets.Class.Evasion"}}</span>
|
{{formGroup systemFields.hitPoints value=source.system.hitPoints localize=true}}
|
||||||
{{formField systemFields.evasion value=source.system.evasion}}
|
{{formGroup systemFields.evasion value=source.system.evasion localize=true}}
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
<div class="fieldsets-section">
|
<div class="fieldsets-section">
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue