From 8095785fc27ea3c5a39f914ec390f71a6dd840f4 Mon Sep 17 00:00:00 2001 From: Byroks Date: Wed, 29 Nov 2023 10:14:49 +0100 Subject: [PATCH] Movement stat (#10) Changes: + make movement stat work and be moddable by effects --- source/module/M5Base.ts | 2 +- source/module/actors/M5Character.ts | 4 ++-- source/module/actors/M5ModAggregate.ts | 2 +- templates/sheets/character/base_values.hbs | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/source/module/M5Base.ts b/source/module/M5Base.ts index 27e40a2..72973f8 100644 --- a/source/module/M5Base.ts +++ b/source/module/M5Base.ts @@ -145,7 +145,7 @@ export interface M5CharacterCalculatedData { damageBonus: M5ModResult; attackBonus: M5ModResult; defenseBonus: M5ModResult; - movementBonus: M5ModResult; + movement: M5ModResult; resistanceMind: M5ModResult; resistanceBody: M5ModResult; spellCasting: M5ModResult; diff --git a/source/module/actors/M5Character.ts b/source/module/actors/M5Character.ts index 7bdd89f..700b0b5 100644 --- a/source/module/actors/M5Character.ts +++ b/source/module/actors/M5Character.ts @@ -58,7 +58,7 @@ export class M5Character extends Actor { damageBonus: { value: 0, mods: [] }, attackBonus: { value: 0, mods: [] }, defenseBonus: { value: 0, mods: [] }, - movementBonus: { value: 0, mods: [] }, + movement: { value: 0, mods: [] }, resistanceMind: { value: 0, mods: [] }, resistanceBody: { value: 0, mods: [] }, spellCasting: { value: 0, mods: [] }, @@ -121,7 +121,7 @@ export class M5Character extends Actor { 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.movementBonus = this.modResult(0); + ret.stats.movement = this.modResult(data.movement); ret.stats.resistanceMind = this.modResult( (data.info.magicUsing ? 2 : 0) + ret.stats.defense.value + (data.info.race === "Mensch" ? ret.attributes.in.bonus : this.raceBonus(data.info.race)) ); diff --git a/source/module/actors/M5ModAggregate.ts b/source/module/actors/M5ModAggregate.ts index a07b142..f3ec131 100644 --- a/source/module/actors/M5ModAggregate.ts +++ b/source/module/actors/M5ModAggregate.ts @@ -31,7 +31,7 @@ export default class M5ModAggregate { this.push({ type: M5ModType.STAT, id: M5Stats.DEFENSE, operation: M5ModOperation.SET, value: calc.stats.defenseBonus.value }, characterString); this.push({ type: M5ModType.STAT, id: M5Stats.ATTACK, operation: M5ModOperation.SET, value: calc.stats.attackBonus.value }, characterString); this.push({ type: M5ModType.STAT, id: M5Stats.DAMAGE, operation: M5ModOperation.SET, value: calc.stats.damageBonus.value }, characterString); - this.push({ type: M5ModType.STAT, id: M5Stats.MOVEMENT, operation: M5ModOperation.SET, value: calc.stats.movementBonus.value }, characterString); + this.push({ type: M5ModType.STAT, id: M5Stats.MOVEMENT, operation: M5ModOperation.SET, value: calc.stats.movement.value }, characterString); this.push({ type: M5ModType.STAT, id: M5Stats.RESISTANCE_MIND, operation: M5ModOperation.SET, value: calc.stats.resistanceMind.value }, characterString); this.push({ type: M5ModType.STAT, id: M5Stats.RESISTANCE_BODY, operation: M5ModOperation.SET, value: calc.stats.resistanceBody.value }, characterString); this.push({ type: M5ModType.STAT, id: M5Stats.SPELL_CASTING, operation: M5ModOperation.SET, value: calc.stats.spellCasting.value }, characterString); diff --git a/templates/sheets/character/base_values.hbs b/templates/sheets/character/base_values.hbs index 1a72a1d..43866ed 100644 --- a/templates/sheets/character/base_values.hbs +++ b/templates/sheets/character/base_values.hbs @@ -56,7 +56,7 @@ {{localize "midgard5.luckPoints"}} {{localize "Bewegungsweite"}} - +