From cc34a5120272d628c58d53c6ddccd61d3ac1ecb0 Mon Sep 17 00:00:00 2001 From: LeFrique Date: Tue, 2 Jan 2024 16:45:19 +0100 Subject: [PATCH] Zwergenhort vorhanden, ganz oder gar nicht verborgen? --- lang/de.json | 3 +- source/PreloadTemplates.ts | 1 + source/module/actors/M5Character.ts | 38 ++++++++++++++++------- source/template.json | 15 ++++++--- templates/sheets/item/armor.hbs | 7 +++++ templates/sheets/item/defensiveWeapon.hbs | 9 +++++- templates/sheets/item/item.hbs | 9 +++++- templates/sheets/item/weapon.hbs | 9 +++++- 8 files changed, 72 insertions(+), 19 deletions(-) diff --git a/lang/de.json b/lang/de.json index 133089a..669bab4 100644 --- a/lang/de.json +++ b/lang/de.json @@ -100,6 +100,7 @@ "midgard5.hoard": "aktueller Hort", "midgard5.hoardMin": "benötigter Mindesthort", "midgard5.hoard-next": "Hort für nächsten Grad", + "midgard5.hoarded": "Hort", "midgard5.exp-overall": "Erfahrungsschatz", "midgard5.exp-available": "Erfahrungspunkte", @@ -222,7 +223,7 @@ "midgard5.defensive-weapon": "Verteidigungswaffe", "midgard5.no-skill": "Keine Fertigkeit", "midgard5.magic": "magisch", - "midgard5.valuable": "Vermögenswert", + "midgard5.valuable": "Vermögen", "midgard5.equipped": "Ausgerüstet", "midgard5.active": "Aktiv", "midgard5.rangedWeapon": "Schusswaffe", diff --git a/source/PreloadTemplates.ts b/source/PreloadTemplates.ts index 7f5fa17..bbd4ae9 100644 --- a/source/PreloadTemplates.ts +++ b/source/PreloadTemplates.ts @@ -8,6 +8,7 @@ const preloadTemplates = async (): Promise[]> = const templates: Array = [ "sheets/character/attribute.hbs", "sheets/character/base_values.hbs", + "sheets/character/main.hbs", "sheets/character/skills.hbs", "sheets/character/gear.hbs", "sheets/character/spells.hbs", diff --git a/source/module/actors/M5Character.ts b/source/module/actors/M5Character.ts index 1c7a903..e7e4534 100644 --- a/source/module/actors/M5Character.ts +++ b/source/module/actors/M5Character.ts @@ -145,8 +145,8 @@ export class M5Character extends Actor { ret.stats.drinkingFW = Math.floor(ret.attributes.ko.value / 10); ret.stats.hoardMin = M5Character.levelThreshold.at (ret.level - 1)/2; ret.stats.hoardNext = M5Character.levelThreshold.at (ret.level)/2; - ret.stats.wealth = data.info.gold + data.info.silver/10 + data.info.copper/100 - (data.info.race === "Zwerg" ? (ret.stats.hoardMin) : 0); - ret.stats.hoard = ret.stats.wealth + (data.info.race === "Zwerg" ? (ret.stats.hoardMin) : 0); + ret.stats.wealth = data.info.gold + data.info.silver/10 + data.info.copper/100; + ret.stats.hoard = 0; if (!skip?.mods) { @@ -177,8 +177,11 @@ export class M5Character extends Actor { label += "*"; }; if (item.system.valuable) { - label += "€"; + label += " € "; ret.stats.wealth += item.system.value || 0; + }; + if (item.system.hoarded) { + label += " $ "; ret.stats.hoard += item.system.value || 0; } @@ -196,6 +199,7 @@ export class M5Character extends Actor { label: label, magic: item.system.magic, valuable: item.system?.valuable, + hoarded: item.system?.hoarded, calc: item.system.calc, equipped: item.system?.equipped, value: item.system.value || 0, @@ -262,16 +266,20 @@ export class M5Character extends Actor { ")"; }; if (item.system.valuable) { - label += "€"; - ret.stats.wealth += item.system.value || 0; + label += " € "; + ret.stats.wealth += item.system.value || 0; + }; + if (item.system.hoarded) { + label += " $ "; ret.stats.hoard += item.system.value || 0; - } + } ret.gear.weapons[item.id] = { label: label, skillId: item.system.skillId, magic: item.system.magic, valuable: item.system?.valuable, + hoarded: item.system?.hoarded, value: item.system.value || 0, calc: item.system.calc, }; @@ -289,8 +297,11 @@ export class M5Character extends Actor { label += "*(" + (item.system.stats.defenseBonus < 0 ? "" : "+") + item.system.stats.defenseBonus + ")"; }; if (item.system.valuable) { - label += "€"; - ret.stats.wealth += item.system.value || 0; + label += " € "; + ret.stats.wealth += item.system.value || 0; + }; + if (item.system.hoarded) { + label += " $ "; ret.stats.hoard += item.system.value || 0; } @@ -299,6 +310,7 @@ export class M5Character extends Actor { skillId: item.system.skillId, magic: item.system.magic, valuable: item.system?.valuable, + hoarded: item.system?.hoarded, value: item.system.value || 0, calc: item.system.calc, }; @@ -316,15 +328,19 @@ export class M5Character extends Actor { label += "*"; }; if (item.system.valuable) { - label += "€"; - ret.stats.wealth += item.system.value || 0; + label += " € "; + ret.stats.wealth += item.system.value || 0; + }; + if (item.system.hoarded) { + label += " $ "; ret.stats.hoard += item.system.value || 0; - } + } ret.gear.armor[item.id] = { label: label, magic: item.system.magic, valuable: item.system?.valuable, + hoarded: item.system?.hoarded, value: item.system.value || 0, calc: item.system.calc, equipped: item.system?.equipped, diff --git a/source/template.json b/source/template.json index 4d5072f..13eaba7 100644 --- a/source/template.json +++ b/source/template.json @@ -204,6 +204,10 @@ "valuable": false, "item-wealth": true }, + "hoarded": { + "hoarded": false, + "inHoard": true + }, "physical": { "value": 0, "magic": false @@ -301,7 +305,7 @@ "calc": {} }, "item": { - "templates": ["itemDescription", "equippable", "physical","valuable"], + "templates": ["itemDescription", "equippable", "physical","valuable","hoarded"], "rolls": { "formulas": {}, "output": "" @@ -319,10 +323,11 @@ "calc": {} }, "weapon": { - "templates": ["itemDescription", "stats", "equippable", "physical","valuable"], + "templates": ["itemDescription", "stats", "equippable", "physical","valuable","hoarded"], "special": false, "ranged": false, "valuable": false, + "hoarded": false, "skillId": "", "damageBase": "1d6", "rolls": { @@ -343,9 +348,10 @@ "calc": {} }, "defensiveWeapon": { - "templates": ["itemDescription", "stats", "equippable", "physical","valuable"], + "templates": ["itemDescription", "stats", "equippable", "physical","valuable","hoarded"], "special": false, "valuable": false, + "hoarded": false, "skillId": "", "rolls": { "formulas": { @@ -360,10 +366,11 @@ "calc": {} }, "armor": { - "templates": ["itemDescription", "stats", "equippable", "attributeMod", "physical","valuable"], + "templates": ["itemDescription", "stats", "equippable", "attributeMod", "physical","valuable","hoarded"], "lpProtection": 0, "apProtection": 0, "valuable": false, + "hoarded": false, "rolls": { "formulas": {}, "output": "" diff --git a/templates/sheets/item/armor.hbs b/templates/sheets/item/armor.hbs index dadcaf5..d43dd9e 100644 --- a/templates/sheets/item/armor.hbs +++ b/templates/sheets/item/armor.hbs @@ -23,6 +23,13 @@ + + {{#unless (eq data.info.race "Zwerg")}} + + + + + {{/unless}} diff --git a/templates/sheets/item/defensiveWeapon.hbs b/templates/sheets/item/defensiveWeapon.hbs index 07e5c00..27c0fea 100644 --- a/templates/sheets/item/defensiveWeapon.hbs +++ b/templates/sheets/item/defensiveWeapon.hbs @@ -7,7 +7,7 @@ - diff --git a/templates/sheets/item/item.hbs b/templates/sheets/item/item.hbs index fdeb4c1..36be41c 100644 --- a/templates/sheets/item/item.hbs +++ b/templates/sheets/item/item.hbs @@ -6,7 +6,7 @@
+
@@ -23,6 +23,13 @@ + + {{#if (eq data.info.race "Zwerg")}} + + + + + {{/if}}
- diff --git a/templates/sheets/item/weapon.hbs b/templates/sheets/item/weapon.hbs index e92a19c..060035e 100644 --- a/templates/sheets/item/weapon.hbs +++ b/templates/sheets/item/weapon.hbs @@ -7,7 +7,7 @@
+
@@ -20,6 +20,13 @@ + + {{#unless (eq data.info.race "Zwerg")}} + + + + + {{/unless}}
-
+
@@ -28,6 +28,13 @@ + + {{#if (eq data.info.race "Zwerg")}} + + + + + {{/if}}