100 lines
4.9 KiB
JavaScript
100 lines
4.9 KiB
JavaScript
/**
|
|
* Data model pour les personnages
|
|
*/
|
|
export default class PersonnageDataModel extends foundry.abstract.TypeDataModel {
|
|
static defineSchema() {
|
|
const fields = foundry.data.fields;
|
|
return {
|
|
// Template biodata
|
|
biodata: new fields.SchemaField({
|
|
name: new fields.StringField({ initial: "" }),
|
|
age: new fields.NumberField({ initial: 0, integer: true }),
|
|
alignement: new fields.StringField({ initial: "" }),
|
|
poids: new fields.StringField({ initial: "" }),
|
|
taille: new fields.StringField({ initial: "" }),
|
|
cheveux: new fields.StringField({ initial: "" }),
|
|
sexe: new fields.StringField({ initial: "" }),
|
|
yeux: new fields.StringField({ initial: "" }),
|
|
description: new fields.HTMLField({ initial: "" }),
|
|
amemultiplier: new fields.NumberField({ initial: 2, integer: true }),
|
|
ignoreamemalus: new fields.BooleanField({ initial: false }),
|
|
ignoresantemalus: new fields.BooleanField({ initial: false }),
|
|
notes: new fields.HTMLField({ initial: "" }),
|
|
gmnotes: new fields.HTMLField({ initial: "" })
|
|
}),
|
|
// Template core
|
|
subactors: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
|
attributs: new fields.SchemaField({
|
|
adr: new fields.SchemaField({
|
|
label: new fields.StringField({ initial: "Adresse" }),
|
|
labelnorm: new fields.StringField({ initial: "adresse" }),
|
|
abbrev: new fields.StringField({ initial: "adr" }),
|
|
value: new fields.NumberField({ initial: 1, integer: true })
|
|
}),
|
|
pui: new fields.SchemaField({
|
|
label: new fields.StringField({ initial: "Puissance" }),
|
|
labelnorm: new fields.StringField({ initial: "puissance" }),
|
|
abbrev: new fields.StringField({ initial: "pui" }),
|
|
value: new fields.NumberField({ initial: 1, integer: true })
|
|
}),
|
|
cla: new fields.SchemaField({
|
|
label: new fields.StringField({ initial: "Clairvoyance" }),
|
|
labelnorm: new fields.StringField({ initial: "clairvoyance" }),
|
|
abbrev: new fields.StringField({ initial: "cla" }),
|
|
value: new fields.NumberField({ initial: 1, integer: true })
|
|
}),
|
|
pre: new fields.SchemaField({
|
|
label: new fields.StringField({ initial: "Présence" }),
|
|
labelnorm: new fields.StringField({ initial: "presence" }),
|
|
abbrev: new fields.StringField({ initial: "pre" }),
|
|
value: new fields.NumberField({ initial: 0, integer: true })
|
|
}),
|
|
tre: new fields.SchemaField({
|
|
label: new fields.StringField({ initial: "Trempe" }),
|
|
labelnorm: new fields.StringField({ initial: "trempe" }),
|
|
abbrev: new fields.StringField({ initial: "tre" }),
|
|
value: new fields.NumberField({ initial: 0, integer: true })
|
|
})
|
|
}),
|
|
bonneaventure: new fields.SchemaField({
|
|
base: new fields.NumberField({ initial: 0, integer: true }),
|
|
actuelle: new fields.NumberField({ initial: 0, integer: true })
|
|
}),
|
|
experience: new fields.SchemaField({
|
|
value: new fields.NumberField({ initial: 0, integer: true })
|
|
}),
|
|
eclat: new fields.SchemaField({
|
|
value: new fields.NumberField({ initial: 0, integer: true })
|
|
}),
|
|
sante: new fields.SchemaField({
|
|
base: new fields.NumberField({ initial: 0, integer: true }),
|
|
bonus: new fields.NumberField({ initial: 0, integer: true }),
|
|
nonletaux: new fields.NumberField({ initial: 0, integer: true }),
|
|
letaux: new fields.NumberField({ initial: 0, integer: true }),
|
|
malusmanuel: new fields.NumberField({ initial: 0, integer: true }),
|
|
sequelles: new fields.StringField({ initial: "" })
|
|
}),
|
|
ame: new fields.SchemaField({
|
|
fullmax: new fields.NumberField({ initial: 0, integer: true }),
|
|
currentmax: new fields.NumberField({ initial: 0, integer: true }),
|
|
value: new fields.NumberField({ initial: 0, integer: true }),
|
|
traumatismes: new fields.StringField({ initial: "" })
|
|
}),
|
|
combat: new fields.SchemaField({
|
|
initbonus: new fields.NumberField({ initial: 0, integer: true }),
|
|
vitessebonus: new fields.NumberField({ initial: 0, integer: true }),
|
|
bonusdegats: new fields.NumberField({ initial: 0, integer: true }),
|
|
defensebonus: new fields.NumberField({ initial: 0, integer: true }),
|
|
monte: new fields.BooleanField({ initial: false })
|
|
}),
|
|
balance: new fields.SchemaField({
|
|
loi: new fields.NumberField({ initial: 0, integer: true }),
|
|
chaos: new fields.NumberField({ initial: 0, integer: true }),
|
|
aspect: new fields.NumberField({ initial: 0, integer: true }),
|
|
marge: new fields.NumberField({ initial: 0, integer: true }),
|
|
pointschaos: new fields.NumberField({ initial: 0, integer: true }),
|
|
pointsloi: new fields.NumberField({ initial: 0, integer: true })
|
|
})
|
|
};
|
|
}
|
|
} |