Import initial
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class ArmeDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
category: new fields.StringField({ initial: "melee" }),
|
||||
origin: new fields.StringField({ initial: "petitPeuple" }),
|
||||
sizeMode: new fields.StringField({ initial: "variable" }),
|
||||
sizeValue: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
sizeModifier: new fields.NumberField({ initial: 0, integer: true }),
|
||||
damage: new fields.StringField({ initial: "" }),
|
||||
range: new fields.StringField({ initial: "" }),
|
||||
properties: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
restrictedRace: new fields.StringField({ initial: "" }),
|
||||
quantity: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
price: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
equipped: new fields.BooleanField({ initial: false }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class ArmureDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
state: new fields.StringField({ initial: "protege" }),
|
||||
protection: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
physicalPenalty: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
initiativePenalty: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
quantity: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
price: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
equipped: new fields.BooleanField({ initial: false }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
export class BaseItemDataModel extends foundry.abstract.TypeDataModel {
|
||||
static defineBaseSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
description: new fields.HTMLField({ initial: "" }),
|
||||
notes: new fields.HTMLField({ initial: "" }),
|
||||
source: new fields.StringField({ initial: "Livre de règles Les Oubliés" }),
|
||||
tags: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
export default class CompagnieDataModel extends foundry.abstract.TypeDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
description: new fields.HTMLField({ initial: "" }),
|
||||
notes: new fields.HTMLField({ initial: "" }),
|
||||
captainId: new fields.StringField({ initial: "" }),
|
||||
memberIds: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
ombreDuTourmentId: new fields.StringField({ initial: "" }),
|
||||
power: new fields.SchemaField({
|
||||
name: new fields.StringField({ initial: "" }),
|
||||
description: new fields.HTMLField({ initial: "" }),
|
||||
sharedDreamPoints: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
activationCondition: new fields.StringField({ initial: "À portée de vue du capitaine" }),
|
||||
captainVisible: new fields.BooleanField({ initial: true }),
|
||||
captainNeedsWitness: new fields.BooleanField({ initial: true }),
|
||||
}),
|
||||
links: new fields.ArrayField(new fields.SchemaField({
|
||||
sourceId: new fields.StringField({ initial: "" }),
|
||||
targetId: new fields.StringField({ initial: "" }),
|
||||
label: new fields.StringField({ initial: "" }),
|
||||
details: new fields.StringField({ initial: "" }),
|
||||
}), { initial: [] }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class CompetenceDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
key: new fields.StringField({ initial: "" }),
|
||||
profileKey: new fields.StringField({ initial: "" }),
|
||||
base: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
closed: new fields.BooleanField({ initial: false }),
|
||||
domainSkill: new fields.BooleanField({ initial: false }),
|
||||
domains: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
fixedDomains: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
exampleDomains: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
export default class CreatureDataModel extends foundry.abstract.TypeDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
biodata: new fields.SchemaField({
|
||||
categorie: new fields.StringField({ initial: "autre" }),
|
||||
habitat: new fields.HTMLField({ initial: "" }),
|
||||
motscles: new fields.StringField({ initial: "" }),
|
||||
description: new fields.HTMLField({ initial: "" }),
|
||||
notes: new fields.HTMLField({ initial: "" }),
|
||||
gmnotes: new fields.HTMLField({ initial: "" }),
|
||||
}),
|
||||
size: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 2, integer: true, min: 1, max: 8 }),
|
||||
label: new fields.StringField({ initial: "" }),
|
||||
}),
|
||||
profils: new fields.SchemaField({
|
||||
artiste: new fields.NumberField({ initial: 0, integer: true }),
|
||||
athlete: new fields.NumberField({ initial: 0, integer: true }),
|
||||
chasseur: new fields.NumberField({ initial: 0, integer: true }),
|
||||
faiseur: new fields.NumberField({ initial: 0, integer: true }),
|
||||
forceNature: new fields.NumberField({ initial: 0, integer: true }),
|
||||
guerrier: new fields.NumberField({ initial: 0, integer: true }),
|
||||
mystique: new fields.NumberField({ initial: 0, integer: true }),
|
||||
ombre: new fields.NumberField({ initial: 0, integer: true }),
|
||||
savant: new fields.NumberField({ initial: 0, integer: true }),
|
||||
}),
|
||||
songes: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
points: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
max: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
cauchemar: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
points: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
max: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
hp: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 8, integer: true, min: 0 }),
|
||||
max: new fields.NumberField({ initial: 8, integer: true, min: 0 }),
|
||||
display: new fields.StringField({ initial: "" }),
|
||||
}),
|
||||
protection: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
statblock: new fields.SchemaField({
|
||||
damage: new fields.HTMLField({ initial: "" }),
|
||||
special: new fields.HTMLField({ initial: "" }),
|
||||
spellSonges: new fields.HTMLField({ initial: "" }),
|
||||
spellCauchemar: new fields.HTMLField({ initial: "" }),
|
||||
}),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class EquipementDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
category: new fields.StringField({ initial: "survie" }),
|
||||
quantity: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
price: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
bonus: new fields.StringField({ initial: "" }),
|
||||
usage: new fields.StringField({ initial: "" }),
|
||||
lifespan: new fields.StringField({ initial: "" }),
|
||||
equipped: new fields.BooleanField({ initial: false }),
|
||||
consumable: new fields.BooleanField({ initial: false }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
export { BaseItemDataModel } from "./base-item.mjs"
|
||||
export { default as PersonnageDataModel } from "./personnage.mjs"
|
||||
export { default as CompagnieDataModel } from "./compagnie.mjs"
|
||||
export { default as CreatureDataModel } from "./creature.mjs"
|
||||
export { default as RaceDataModel } from "./race.mjs"
|
||||
export { default as TribuDataModel } from "./tribu.mjs"
|
||||
export { default as MetierDataModel } from "./metier.mjs"
|
||||
export { default as CompetenceDataModel } from "./competence.mjs"
|
||||
export { default as SortilegeDataModel } from "./sortilege.mjs"
|
||||
export { default as ArmeDataModel } from "./arme.mjs"
|
||||
export { default as ArmureDataModel } from "./armure.mjs"
|
||||
export { default as EquipementDataModel } from "./equipement.mjs"
|
||||
export { default as PouvoirCompagnieDataModel } from "./pouvoir-compagnie.mjs"
|
||||
@@ -0,0 +1,39 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class MetierDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
specialRules: new fields.HTMLField({ initial: "" }),
|
||||
roleplayNotes: new fields.HTMLField({ initial: "" }),
|
||||
skillBonuses: new fields.ArrayField(new fields.SchemaField({
|
||||
key: new fields.StringField({ initial: "" }),
|
||||
alternativeKeys: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
base: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
domainsGranted: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
domainsToChoose: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
domainsChoiceText: new fields.StringField({ initial: "" }),
|
||||
}), { initial: [] }),
|
||||
startingEquipment: new fields.ArrayField(new fields.SchemaField({
|
||||
name: new fields.StringField({ initial: "" }),
|
||||
type: new fields.StringField({ initial: "equipement" }),
|
||||
quantity: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
details: new fields.StringField({ initial: "" }),
|
||||
choiceText: new fields.StringField({ initial: "" }),
|
||||
ecorces: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}), { initial: [] }),
|
||||
spellGrants: new fields.ArrayField(new fields.SchemaField({
|
||||
tradition: new fields.StringField({ initial: "" }),
|
||||
skillKey: new fields.StringField({ initial: "" }),
|
||||
polarity: new fields.StringField({ initial: "" }),
|
||||
amount: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}), { initial: [] }),
|
||||
revenues: new fields.SchemaField({
|
||||
beginner: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
intermediate: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
expert: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
export default class PersonnageDataModel extends foundry.abstract.TypeDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
biodata: new fields.SchemaField({
|
||||
age: new fields.NumberField({ initial: 20, integer: true, min: 0 }),
|
||||
sexe: new fields.StringField({ initial: "" }),
|
||||
motscles: new fields.StringField({ initial: "" }),
|
||||
description: new fields.HTMLField({ initial: "" }),
|
||||
notes: new fields.HTMLField({ initial: "" }),
|
||||
gmnotes: new fields.HTMLField({ initial: "" }),
|
||||
}),
|
||||
references: new fields.SchemaField({
|
||||
raceId: new fields.StringField({ initial: "" }),
|
||||
tribuId: new fields.StringField({ initial: "" }),
|
||||
metierId: new fields.StringField({ initial: "" }),
|
||||
compagnieId: new fields.StringField({ initial: "" }),
|
||||
}),
|
||||
size: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 2, integer: true, min: 1, max: 4 }),
|
||||
label: new fields.StringField({ initial: "" }),
|
||||
}),
|
||||
profils: new fields.SchemaField({
|
||||
artiste: new fields.NumberField({ initial: 0, integer: true }),
|
||||
athlete: new fields.NumberField({ initial: 0, integer: true }),
|
||||
chasseur: new fields.NumberField({ initial: 0, integer: true }),
|
||||
faiseur: new fields.NumberField({ initial: 0, integer: true }),
|
||||
forceNature: new fields.NumberField({ initial: 0, integer: true }),
|
||||
guerrier: new fields.NumberField({ initial: 0, integer: true }),
|
||||
mystique: new fields.NumberField({ initial: 0, integer: true }),
|
||||
ombre: new fields.NumberField({ initial: 0, integer: true }),
|
||||
savant: new fields.NumberField({ initial: 0, integer: true }),
|
||||
}),
|
||||
songes: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
points: new fields.NumberField({ initial: 2, integer: true, min: 0 }),
|
||||
max: new fields.NumberField({ initial: 2, integer: true, min: 0 }),
|
||||
debt: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
xpCredit: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
cauchemar: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
points: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
max: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
debt: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
xpCredit: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
hp: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 8, integer: true, min: 0 }),
|
||||
max: new fields.NumberField({ initial: 8, integer: true, min: 0 }),
|
||||
bonus: new fields.NumberField({ initial: 0, integer: true }),
|
||||
}),
|
||||
experience: new fields.SchemaField({
|
||||
value: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
money: new fields.SchemaField({
|
||||
ecorces: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
}),
|
||||
flagsNarratifs: new fields.SchemaField({
|
||||
ombreDuTourment: new fields.BooleanField({ initial: false }),
|
||||
isCaptain: new fields.BooleanField({ initial: false }),
|
||||
}),
|
||||
visions: new fields.HTMLField({ initial: "" }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class PouvoirCompagnieDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
scope: new fields.StringField({ initial: "compagnie" }),
|
||||
effectMode: new fields.StringField({ initial: "" }),
|
||||
ruleText: new fields.HTMLField({ initial: "" }),
|
||||
limitedUses: new fields.StringField({ initial: "" }),
|
||||
resourceImpact: new fields.StringField({ initial: "" }),
|
||||
activationCondition: new fields.StringField({ initial: "À portée de vue du capitaine" }),
|
||||
captainVisible: new fields.BooleanField({ initial: true }),
|
||||
captainNeedsWitness: new fields.BooleanField({ initial: true }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class RaceDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
size: new fields.NumberField({ initial: 2, integer: true, min: 1, max: 4 }),
|
||||
lifeExpectancy: new fields.NumberField({ initial: 50, integer: true, min: 0 }),
|
||||
keywords: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
mainTribes: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
language: new fields.StringField({ initial: "" }),
|
||||
languageDomains: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
specialRules: new fields.HTMLField({ initial: "" }),
|
||||
appearance: new fields.HTMLField({ initial: "" }),
|
||||
roleplayHints: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
profiles: new fields.SchemaField({
|
||||
artiste: new fields.NumberField({ initial: 0, integer: true }),
|
||||
athlete: new fields.NumberField({ initial: 0, integer: true }),
|
||||
chasseur: new fields.NumberField({ initial: 0, integer: true }),
|
||||
faiseur: new fields.NumberField({ initial: 0, integer: true }),
|
||||
forceNature: new fields.NumberField({ initial: 0, integer: true }),
|
||||
guerrier: new fields.NumberField({ initial: 0, integer: true }),
|
||||
mystique: new fields.NumberField({ initial: 0, integer: true }),
|
||||
ombre: new fields.NumberField({ initial: 0, integer: true }),
|
||||
savant: new fields.NumberField({ initial: 0, integer: true }),
|
||||
}),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class SortilegeDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
tradition: new fields.StringField({ initial: "" }),
|
||||
skillKey: new fields.StringField({ initial: "" }),
|
||||
polarity: new fields.StringField({ initial: "songes" }),
|
||||
cost: new fields.NumberField({ initial: 1, integer: true, min: 0 }),
|
||||
costFormula: new fields.StringField({ initial: "" }),
|
||||
variableCost: new fields.BooleanField({ initial: false }),
|
||||
preparation: new fields.StringField({ initial: "" }),
|
||||
duration: new fields.StringField({ initial: "" }),
|
||||
range: new fields.StringField({ initial: "" }),
|
||||
area: new fields.StringField({ initial: "" }),
|
||||
stacking: new fields.StringField({ initial: "" }),
|
||||
requiredDomains: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
artsDomains: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
effectsText: new fields.HTMLField({ initial: "" }),
|
||||
ruleTags: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
import { BaseItemDataModel } from "./base-item.mjs"
|
||||
|
||||
export default class TribuDataModel extends BaseItemDataModel {
|
||||
static defineSchema() {
|
||||
const fields = foundry.data.fields
|
||||
return {
|
||||
...this.defineBaseSchema(),
|
||||
keywords: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
mainRace: new fields.StringField({ initial: "" }),
|
||||
spokenLanguage: new fields.StringField({ initial: "" }),
|
||||
philosophy: new fields.StringField({ initial: "" }),
|
||||
pride: new fields.StringField({ initial: "" }),
|
||||
mythNature: new fields.StringField({ initial: "" }),
|
||||
mythEdenia: new fields.StringField({ initial: "" }),
|
||||
territory: new fields.StringField({ initial: "" }),
|
||||
specialRules: new fields.HTMLField({ initial: "" }),
|
||||
roleplayNotes: new fields.HTMLField({ initial: "" }),
|
||||
restrictedJobs: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
allowedJobs: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
skillBonuses: new fields.ArrayField(new fields.SchemaField({
|
||||
key: new fields.StringField({ initial: "" }),
|
||||
alternativeKeys: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
base: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
domainsGranted: new fields.ArrayField(new fields.StringField(), { initial: [] }),
|
||||
domainsToChoose: new fields.NumberField({ initial: 0, integer: true, min: 0 }),
|
||||
domainsChoiceText: new fields.StringField({ initial: "" }),
|
||||
}), { initial: [] }),
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user