Skip to content

Commit 7ec5677

Browse files
authored
Merge pull request #456 from vttred/fix/attribute-bars
fix: hp/encumbrance attribute bars restored
2 parents b7bf229 + 1aae300 commit 7ec5677

File tree

2 files changed

+27
-21
lines changed

2 files changed

+27
-21
lines changed

src/module/actor/data-model-character.js

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ export default class OseDataModelCharacter extends foundry.abstract.DataModel {
6161

6262
// @todo define schema options; stuff like min/max values and so on.
6363
static defineSchema() {
64-
const { StringField, NumberField, BooleanField, ObjectField } =
64+
const { StringField, NumberField, BooleanField, ObjectField, SchemaField } =
6565
foundry.data.fields;
6666

6767
return {
@@ -70,33 +70,36 @@ export default class OseDataModelCharacter extends foundry.abstract.DataModel {
7070
details: new ObjectField(),
7171
ac: new ObjectField(),
7272
aac: new ObjectField(),
73-
encumbrance: new ObjectField(),
73+
encumbrance: new SchemaField({
74+
value: new NumberField({ integer: false }),
75+
max: new NumberField({ integer: false }),
76+
}),
7477
movement: new ObjectField(),
7578
config: new ObjectField(),
7679
initiative: new ObjectField(),
77-
hp: new ObjectField({
80+
hp: new SchemaField({
7881
hd: new StringField(),
7982
value: new NumberField({ integer: true }),
8083
max: new NumberField({ integer: true }),
8184
}),
8285
thac0: new ObjectField(),
8386
languages: new ObjectField(),
84-
saves: new ObjectField({
85-
breath: new ObjectField({ value: new NumberField({ integer: true }) }),
86-
death: new ObjectField({ value: new NumberField({ integer: true }) }),
87-
paralysis: new ObjectField({
87+
saves: new SchemaField({
88+
breath: new SchemaField({ value: new NumberField({ integer: true }) }),
89+
death: new SchemaField({ value: new NumberField({ integer: true }) }),
90+
paralysis: new SchemaField({
8891
value: new NumberField({ integer: true }),
8992
}),
90-
spell: new ObjectField({ value: new NumberField({ integer: true }) }),
91-
wand: new ObjectField({ value: new NumberField({ integer: true }) }),
93+
spell: new SchemaField({ value: new NumberField({ integer: true }) }),
94+
wand: new SchemaField({ value: new NumberField({ integer: true }) }),
9295
}),
93-
exploration: new ObjectField({
96+
exploration: new SchemaField({
9497
ft: new NumberField({ integer: true, positive: true }),
9598
ld: new NumberField({ integer: true, positive: true }),
9699
od: new NumberField({ integer: true, positive: true }),
97100
sd: new NumberField({ integer: true, positive: true }),
98101
}),
99-
retainer: new ObjectField({
102+
retainer: new SchemaField({
100103
enabled: new BooleanField(),
101104
loyalty: new NumberField({ integer: true }),
102105
wage: new StringField(),

src/module/actor/data-model-monster.js

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,35 +24,38 @@ export default class OseDataModelMonster extends foundry.abstract.DataModel {
2424

2525
// @todo define schema options; stuff like min/max values and so on.
2626
static defineSchema() {
27-
const { StringField, NumberField, BooleanField, ObjectField } =
27+
const { StringField, NumberField, BooleanField, ObjectField, SchemaField } =
2828
foundry.data.fields;
2929

3030
return {
3131
spells: new ObjectField(),
3232
details: new ObjectField(),
3333
ac: new ObjectField(),
3434
aac: new ObjectField(),
35-
encumbrance: new ObjectField(),
35+
encumbrance: new SchemaField({
36+
value: new NumberField({ integer: false }),
37+
max: new NumberField({ integer: false }),
38+
}),
3639
movement: new ObjectField(),
3740
config: new ObjectField(),
3841
initiative: new ObjectField(),
39-
hp: new ObjectField({
42+
hp: new SchemaField({
4043
hd: new StringField(),
4144
value: new NumberField({ integer: true }),
4245
max: new NumberField({ integer: true }),
4346
}),
4447
thac0: new ObjectField(),
4548
languages: new ObjectField(),
46-
saves: new ObjectField({
47-
breath: new ObjectField({ value: new NumberField({ integer: true }) }),
48-
death: new ObjectField({ value: new NumberField({ integer: true }) }),
49-
paralysis: new ObjectField({
49+
saves: new SchemaField({
50+
breath: new SchemaField({ value: new NumberField({ integer: true }) }),
51+
death: new SchemaField({ value: new NumberField({ integer: true }) }),
52+
paralysis: new SchemaField({
5053
value: new NumberField({ integer: true }),
5154
}),
52-
spell: new ObjectField({ value: new NumberField({ integer: true }) }),
53-
wand: new ObjectField({ value: new NumberField({ integer: true }) }),
55+
spell: new SchemaField({ value: new NumberField({ integer: true }) }),
56+
wand: new SchemaField({ value: new NumberField({ integer: true }) }),
5457
}),
55-
retainer: new ObjectField({
58+
retainer: new SchemaField({
5659
enabled: new BooleanField(),
5760
loyalty: new NumberField({ integer: true }),
5861
wage: new StringField(),

0 commit comments

Comments
 (0)