From 4389d4417a5aa6ab7f514d4d827904d15faa2729 Mon Sep 17 00:00:00 2001 From: David Cernat Date: Wed, 11 Nov 2020 14:55:55 +0200 Subject: [PATCH] [Client] Add setStatsDynamic() method to DedicatedPlayer --- apps/openmw/mwmp/DedicatedPlayer.cpp | 12 ++++++++++++ apps/openmw/mwmp/DedicatedPlayer.hpp | 1 + .../player/ProcessorPlayerStatsDynamic.hpp | 10 +--------- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/apps/openmw/mwmp/DedicatedPlayer.cpp b/apps/openmw/mwmp/DedicatedPlayer.cpp index 6a6cbc04e..13e942c03 100644 --- a/apps/openmw/mwmp/DedicatedPlayer.cpp +++ b/apps/openmw/mwmp/DedicatedPlayer.cpp @@ -176,6 +176,18 @@ void DedicatedPlayer::setBaseInfo() previousRace = npc.mRace; } +void DedicatedPlayer::setStatsDynamic() +{ + MWMechanics::CreatureStats* ptrCreatureStats = &getPtr().getClass().getCreatureStats(getPtr()); + MWMechanics::DynamicStat value; + + for (int i = 0; i < 3; ++i) + { + value.readState(creatureStats.mDynamic[i]); + ptrCreatureStats->setDynamic(i, value); + } +} + void DedicatedPlayer::setShapeshift() { MWBase::World *world = MWBase::Environment::get().getWorld(); diff --git a/apps/openmw/mwmp/DedicatedPlayer.hpp b/apps/openmw/mwmp/DedicatedPlayer.hpp index 0abf26090..8896f0996 100644 --- a/apps/openmw/mwmp/DedicatedPlayer.hpp +++ b/apps/openmw/mwmp/DedicatedPlayer.hpp @@ -34,6 +34,7 @@ namespace mwmp void move(float dt); void setBaseInfo(); + void setStatsDynamic(); void setShapeshift(); void setAnimFlags(); void setAttributes(); diff --git a/apps/openmw/mwmp/processors/player/ProcessorPlayerStatsDynamic.hpp b/apps/openmw/mwmp/processors/player/ProcessorPlayerStatsDynamic.hpp index a2dae2e23..a4829de7d 100644 --- a/apps/openmw/mwmp/processors/player/ProcessorPlayerStatsDynamic.hpp +++ b/apps/openmw/mwmp/processors/player/ProcessorPlayerStatsDynamic.hpp @@ -25,15 +25,7 @@ namespace mwmp } else if (player != 0) { - MWWorld::Ptr ptrPlayer = static_cast(player)->getPtr(); - MWMechanics::CreatureStats *ptrCreatureStats = &ptrPlayer.getClass().getCreatureStats(ptrPlayer); - MWMechanics::DynamicStat value; - - for (int i = 0; i < 3; ++i) - { - value.readState(player->creatureStats.mDynamic[i]); - ptrCreatureStats->setDynamic(i, value); - } + static_cast(player)->setStatsDynamic(); } } };