Release Creation / build (release) Failing after 1m24s
- véhicule : fiabilité 1-10, type véhicule/monture, distance, vitesse (croisière/pointe), entretien, réserve d'effort - nettoyage du tableau d'entretien à la soumission - fiche de groupe : section capacités de totem (création type totem + liste)
44 lines
2.0 KiB
JavaScript
44 lines
2.0 KiB
JavaScript
import { baseItemSchema } from "./_shared.mjs"
|
|
|
|
/**
|
|
* DataModel pour les items de type "vehicle" (véhicules et montures).
|
|
* Caractéristiques : Rareté, Fiabilité, Distance, Vitesse (croisière/pointe),
|
|
* Entretien (compétences) et Réserve d'Effort (montures).
|
|
* @augments {foundry.abstract.TypeDataModel}
|
|
*/
|
|
export default class VermineVehicleData extends foundry.abstract.TypeDataModel {
|
|
/** @override */
|
|
static LOCALIZATION_PREFIXES = ["VERMINE.item.vehicle"]
|
|
|
|
/** @override */
|
|
static defineSchema() {
|
|
const fields = foundry.data.fields
|
|
const reqInt = { required: true, nullable: false, integer: true }
|
|
return {
|
|
...baseItemSchema(),
|
|
// Fiabilité étendue (1-10) pour les véhicules
|
|
reliability: new fields.NumberField({ ...reqInt, initial: 5, min: 1, max: 10 }),
|
|
// Type : "vehicle" (véhicule) ou "mount" (monture)
|
|
kind: new fields.StringField({ required: true, nullable: false, initial: "vehicle" }),
|
|
// Distance : km parcourus avec un "plein"
|
|
distance: new fields.NumberField({ ...reqInt, initial: 0, min: 0 }),
|
|
// Vitesse : croisière / pointe (durée de la pointe)
|
|
speed: new fields.SchemaField({
|
|
cruise: new fields.NumberField({ ...reqInt, initial: 0, min: 0 }),
|
|
top: new fields.NumberField({ ...reqInt, initial: 0, min: 0 }),
|
|
topDuration: new fields.StringField({ required: true, nullable: false, initial: "10 min" })
|
|
}),
|
|
// Entretien : compétences nécessaires (clés de CONFIG.VERMINE.skills)
|
|
maintenance: new fields.ArrayField(new fields.StringField({ required: true, nullable: false, initial: "" })),
|
|
// Réserve d'Effort (montures)
|
|
effortReserve: new fields.SchemaField({
|
|
value: new fields.NumberField({ ...reqInt, initial: 0, min: 0 }),
|
|
min: new fields.NumberField({ ...reqInt, initial: 0, min: 0 }),
|
|
max: new fields.NumberField({ ...reqInt, initial: 0, min: 0 })
|
|
}),
|
|
// Mobilité (héritée)
|
|
mobility: new fields.NumberField({ ...reqInt, initial: 3, min: 0 })
|
|
}
|
|
}
|
|
}
|