From 1852f2bf08016e642fce894f1c69c5218ea6c06f Mon Sep 17 00:00:00 2001 From: Byroks Date: Sun, 26 May 2024 09:56:02 +0200 Subject: [PATCH] Sneak Fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changes: + EP Input vergrößert + Verstecke Ungelernte Fähigkeiten auf Spieler Bogen wie bei NPC Bogen + Fix Mods (again) + nutze richtige movement wert bei NPC Bogen --- source/module/actors/M5Character.ts | 22 ++++++++++++---------- templates/sheets/character/base_values.hbs | 2 +- templates/sheets/character/skills.hbs | 4 ++++ templates/sheets/npc/properties.hbs | 2 +- 4 files changed, 18 insertions(+), 12 deletions(-) diff --git a/source/module/actors/M5Character.ts b/source/module/actors/M5Character.ts index e745fcb..9f1f863 100644 --- a/source/module/actors/M5Character.ts +++ b/source/module/actors/M5Character.ts @@ -152,6 +152,7 @@ export class M5Character extends Actor { ret.level = M5Character.levelFromExp(data.info.race === "Zwerg" ? Math.min(data.calc.stats?.hoard * 2 || 0, data.es) : data.es); + //Set all values that are not dependent on another Value ret.attributes.st.value = M5Character.attributeMinMax(data.attributes.st); // TODO item effects ret.attributes.gs.value = M5Character.attributeMinMax(data.attributes.gs); ret.attributes.gw.value = M5Character.attributeMinMax(data.attributes.gw); @@ -172,6 +173,17 @@ export class M5Character extends Actor { ret.attributes.pa.bonus = M5Character.attributeBonus(data.attributes.pa); ret.attributes.wk.bonus = M5Character.attributeBonus(data.attributes.wk); + ret.stats.lp = this.modResult(data.lp); + ret.stats.ap = this.modResult(data.ap); + ret.stats.lpProtection = this.modResult(0); + ret.stats.apProtection = this.modResult(0); + ret.stats.movement = this.modResult(data.movement); + ret.stats.hoardMin = M5Character.levelThreshold.at(ret.level - 1) / 2; + ret.stats.hoardNext = M5Character.levelThreshold.at(ret.level) / 2; + ret.stats.wealth = parseFloat((data.info.gold + data.info.silver / 10 + data.info.copper / 100).toPrecision(3)); + ret.stats.hoard = 0; + ret.stats.encumbrance = 0; + if (!skip?.mods) { const aggregate = new M5ModAggregate(data, ret); @@ -192,15 +204,10 @@ export class M5Character extends Actor { ret.skillMods = aggregate.calculate(); } - ret.stats.lp = this.modResult(data.lp); - ret.stats.ap = this.modResult(data.ap); - ret.stats.lpProtection = this.modResult(0); - ret.stats.apProtection = this.modResult(0); ret.stats.defense = this.modResult(M5Character.defenseFromLevel(ret.level)); ret.stats.damageBonus = this.modResult(Math.floor(ret.attributes.st.value / 20) + Math.floor(ret.attributes.gs.value / 30) - 3); ret.stats.attackBonus = this.modResult(ret.attributes.gs.bonus); ret.stats.defenseBonus = this.modResult(ret.attributes.gw.bonus); - ret.stats.movement = this.modResult(data.movement); ret.stats.resistanceMind = this.modResult(ret.stats.defense.value + (data.info.race === "Mensch" ? ret.attributes.in.bonus : this.raceBonus(data.info.race))); ret.stats.resistanceBody = this.modResult(ret.stats.defense.value + (data.info.race === "Mensch" ? ret.attributes.ko.bonus : this.raceBonus(data.info.race))); ret.stats.spellCasting = this.modResult((data.info.magicUsing ? M5Character.spellCastingFromLevel(ret.level) : 3) + ret.attributes.zt.bonus); @@ -211,15 +218,10 @@ export class M5Character extends Actor { ret.stats.deprivationCold = this.modResult(Math.floor(ret.attributes.ko.value / 2)); ret.stats.deprivationHeat = this.modResult(Math.floor(ret.attributes.ko.value / 2)); ret.stats.deprivationFood = this.modResult(Math.floor(40 + ret.attributes.ko.value / 2)); - ret.stats.hoardMin = M5Character.levelThreshold.at(ret.level - 1) / 2; - ret.stats.hoardNext = M5Character.levelThreshold.at(ret.level) / 2; - ret.stats.wealth = parseFloat((data.info.gold + data.info.silver / 10 + data.info.copper / 100).toPrecision(3)); - ret.stats.hoard = 0; ret.stats.load = M5Character.loadValue(data.attributes.st); ret.stats.heavyLoad = M5Character.heavyLoadValue(data.attributes.st); ret.stats.loadMax = M5Character.maxLoadValue(data.attributes.st); ret.stats.thrustLoad = M5Character.thrustLoadValue(data.attributes.st); - ret.stats.encumbrance = 0; if (!skip?.containers) { context.items diff --git a/templates/sheets/character/base_values.hbs b/templates/sheets/character/base_values.hbs index 20b25b7..e4ecbc7 100644 --- a/templates/sheets/character/base_values.hbs +++ b/templates/sheets/character/base_values.hbs @@ -35,7 +35,7 @@ {{localize "midgard5.grace"}} {{localize "midgard5.exp-overall"}} - + {{localize "midgard5.destiny"}} diff --git a/templates/sheets/character/skills.hbs b/templates/sheets/character/skills.hbs index cbebdde..2fa832d 100644 --- a/templates/sheets/character/skills.hbs +++ b/templates/sheets/character/skills.hbs @@ -142,6 +142,8 @@
{{localize "midgard5.unlearned-skills"}}
+ + @@ -154,6 +156,7 @@ + {{#unless (not data.info.showUnlearned)}} {{#each data.skills.general as |skill key|}} {{#unless (isSkillInList (localizeMidgard key) ../actor.system.calc.skills.general) }} @@ -166,6 +169,7 @@ {{/unless}} {{/each}} + {{/unless}}
diff --git a/templates/sheets/npc/properties.hbs b/templates/sheets/npc/properties.hbs index 08439b4..a7f11e3 100644 --- a/templates/sheets/npc/properties.hbs +++ b/templates/sheets/npc/properties.hbs @@ -15,7 +15,7 @@ {{> "systems/midgard5/templates/sheets/npc/attribute.hbs" attributeId="git" attribute=data.attributes.git}}
{{localize "midgard5.movementRange"}}
-
+
{{localize "midgard5.exp-overall"}}