From fdfde836fe58e127521ee5306e4e9c4f6f0c3259 Mon Sep 17 00:00:00 2001 From: Evil Eye Date: Sat, 12 Feb 2022 01:03:12 +0100 Subject: [PATCH] Expect recent saves to store the modified value --- apps/openmw/mwmechanics/stat.cpp | 4 ++-- apps/openmw/mwworld/magiceffects.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/openmw/mwmechanics/stat.cpp b/apps/openmw/mwmechanics/stat.cpp index eacfca98ae..585808645a 100644 --- a/apps/openmw/mwmechanics/stat.cpp +++ b/apps/openmw/mwmechanics/stat.cpp @@ -21,13 +21,13 @@ namespace MWMechanics void Stat::writeState (ESM::StatState& state) const { state.mBase = mBase; - state.mMod = mModifier; + state.mMod = mModifier + mBase; } template void Stat::readState (const ESM::StatState& state) { mBase = state.mBase; - mModifier = state.mMod; + mModifier = state.mMod - mBase; } diff --git a/apps/openmw/mwworld/magiceffects.cpp b/apps/openmw/mwworld/magiceffects.cpp index 1138a55238..f52a61af52 100644 --- a/apps/openmw/mwworld/magiceffects.cpp +++ b/apps/openmw/mwworld/magiceffects.cpp @@ -201,10 +201,10 @@ namespace MWWorld { auto& dynamic = creatureStats.mDynamic[i]; dynamic.mCurrent -= dynamic.mMod - dynamic.mBase; - dynamic.mMod = 0.f; + dynamic.mMod = dynamic.mBase; } for(std::size_t i = 0; i < 4; ++i) - creatureStats.mAiSettings[i].mMod = 0.f; + creatureStats.mAiSettings[i].mMod = creatureStats.mAiSettings[i].mBase; if(npcStats) { for(std::size_t i = 0; i < ESM::Skill::Length; ++i)