@@ -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