diff --git a/src/main.mjs b/src/main.mjs index 8e75794..69d269a 100644 --- a/src/main.mjs +++ b/src/main.mjs @@ -617,9 +617,9 @@ class DSA41_BewaffnungData extends TypeDataModel { preis: new NumberField({ integer: true, initial: 0, min: 0 }), nahkampfwaffe: new SchemaField({ - aktiv: new BooleanField(), + aktiv: new BooleanField({ initial: false }), - basis: new StringField(), + basis: new StringField({ initial: "1d4" }), schwellenwert: new NumberField({ integer: true, initial: 0, min: 0 }), schadensschritte: new NumberField({ integer: true, initial: 0, min: 0 }), @@ -629,19 +629,19 @@ class DSA41_BewaffnungData extends TypeDataModel { initiative: new NumberField({ integer: true, initial: 0 }), bruchfaktor: new NumberField({ integer: true, initial: 0 }), - distanzklasse: new StringField(), - kampftalente: new StringField(), + distanzklasse: new StringField({ initial: "" }), + kampftalente: new StringField({ initial: "" }), - laenge: new NumberField({ integer: true, initial: 0, min: 0 }), + laenge: new NumberField({ integer: true, initial: 0, min: 0 }), - zweihaendig: new BooleanField(), - werfbar: new BooleanField(), - improvisiert: new BooleanField(), - priviligiert: new BooleanField(), + zweihaendig: new BooleanField({ initial: false }), + werfbar: new BooleanField({ initial: false }), + improvisiert: new BooleanField({ initial: false }), + priviligiert: new BooleanField({ initial: false }), }), parierwaffe: new SchemaField({ - aktiv: new BooleanField(), + aktiv: new BooleanField({ initial: false }), modifikator_attacke: new NumberField({ integer: true, initial: 0 }), modifikator_parade: new NumberField({ integer: true, initial: 0 }), @@ -651,9 +651,9 @@ class DSA41_BewaffnungData extends TypeDataModel { }), schild: new SchemaField({ - aktiv: new BooleanField(), + aktiv: new BooleanField({ initial: false }), - groesse: new StringField(), + groesse: new StringField({ initial: "klein" }), modifikator_attacke: new NumberField({ integer: true, initial: 0 }), modifikator_parade: new NumberField({ integer: true, initial: 0 }), @@ -663,7 +663,7 @@ class DSA41_BewaffnungData extends TypeDataModel { }), fernkampfwaffe: new SchemaField({ - aktiv: new BooleanField(), + aktiv: new BooleanField({ initial: false }), basis: new StringField({ initial: "1d6 + 1" }), laden: new NumberField({ integer: true, initial: 0 }), @@ -691,11 +691,11 @@ class DSA41_TalentData extends TypeDataModel { static defineSchema() { return { kategorie: new StringField({ initial: "koerperliche" }), - behinderung: new StringField(), + behinderung: new StringField({ initial: "" }), - attribute1: new StringField(), - attribute2: new StringField(), - attribute3: new StringField(), + attribute1: new StringField({ initial: "courage" }), + attribute2: new StringField({ initial: "courage" }), + attribute3: new StringField({ initial: "courage" }), talentwert: new NumberField({ integer: true, initial: 0 }), }; @@ -706,10 +706,10 @@ class DSA41_KampftalentData extends TypeDataModel { static defineSchema() { return { kategorie: new StringField({ initial: "waffenlos" }), - behinderung: new StringField(), - steigern: new StringField(), + behinderung: new StringField({ initial: "" }), + steigern: new StringField({ initial: "A_Star"}), - beschreibung: new StringField(), + beschreibung: new StringField({ initial: "" }), talentwert: new NumberField({ integer: true, initial: 0 }), attacke: new NumberField({ integer: true, initial: 0 }), @@ -725,7 +725,7 @@ class DSA41_SonderfertigkeitData extends TypeDataModel { kosten: new NumberField({ integer: true, initial: 0 }), verbreitung: new NumberField({ integer: true, initial: 0 }), - beschreibung: new StringField(), + beschreibung: new StringField({ initial: "" }), }; } } @@ -736,7 +736,7 @@ class DSA41_VorNachteilData extends TypeDataModel { kategorie: new StringField({ initial: "vorteil" }), kosten: new NumberField({ integer: true, initial: 0 }), - beschreibung: new StringField(), + beschreibung: new StringField({ initial: "" }), }; } } diff --git a/zig/system.zig b/zig/system.zig index fa4fca2..8a6ac8d 100644 --- a/zig/system.zig +++ b/zig/system.zig @@ -17,6 +17,8 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { preis: f64 = 0, }), Ruestung: foundry.Item("Ruestung", struct { + angelegt: bool = false, + gewicht: f64 = 0, preis: f64 = 0, @@ -33,6 +35,8 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { gesamt_behinderung: f64 = 0, }), Bewaffnung: foundry.Item("Bewaffnung", struct { + angelegt: bool = false, + gewicht: f64 = 0, preis: f64 = 0, @@ -52,7 +56,7 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { distanzklasse: String = "", kampftalente: String = "", - laenge: u8 = 0, + laenge: u64 = 0, zweihaendig: bool = false, werfbar: bool = false, @@ -85,7 +89,7 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { fernkampfwaffe: struct { aktiv: bool = false, - basis: String = "1d4", + basis: String = "1d6 + 1", laden: u8 = 0, reichweite1: u8 = 0, @@ -111,12 +115,12 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { natur, wissens, handwerks, - }, + } = .koerperliche, behinderung: String = "", - attribute1: Attribute, - attribute2: Attribute, - attribute3: Attribute, + attribute1: Attribute = .MU, + attribute2: Attribute = .MU, + attribute3: Attribute = .MU, talentwert: u8 = 0, }), @@ -125,7 +129,7 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { waffenlos, nahkampf, fernkampf, - }, + } = .waffenlos, steigern: enum { A_Star, @@ -137,7 +141,7 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { F, G, H, - }, + } = .A_Star, behinderung: String = "", beschreibung: String = "", @@ -146,6 +150,28 @@ pub const ItemCompendium = foundry.Compendium(.Item, union(enum) { attacke: u8 = 0, parade: u8 = 0, }), + Sonderfertigkeit: foundry.Item("Sonderfertigkeit", struct { + kategorie: enum { + allgemein, + kampf, + magisch, + klerikal, + } = .allgemein, + + kosten: u64 = 0, + verbreitung: u64 = 0, + + beschreibung: String = "", + }), + VorNachteil: foundry.Item("VorNachteil", struct { + kategorie: enum { + vorteil, + nachteil + } = .vorteil, + + kosten: u64 = 0, + beschreibung: String = "", + }), }); const Attribute = enum {