1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-06-07 16:41:35 +00:00

[Client] Use better check for empty CreatureStats in DedicatedActor

This commit is contained in:
David Cernat 2017-04-25 16:55:58 +03:00
parent 11605bd19a
commit 7dbcfbd3b1
3 changed files with 6 additions and 3 deletions

View file

@ -155,6 +155,7 @@ void Cell::readStatsDynamic(ActorList& actorList)
{ {
DedicatedActor *actor = dedicatedActors[mapIndex]; DedicatedActor *actor = dedicatedActors[mapIndex];
actor->creatureStats = baseActor.creatureStats; actor->creatureStats = baseActor.creatureStats;
actor->hasStatsDynamicData = true;
} }
} }
} }

View file

@ -31,8 +31,8 @@ DedicatedActor::DedicatedActor()
creatureStats = new ESM::CreatureStats(); creatureStats = new ESM::CreatureStats();
creatureStats->blank(); creatureStats->blank();
creatureStats->mDynamic[0].mBase = -1;
hasStatsDynamicData = false;
hasChangedCell = true; hasChangedCell = true;
attack.pressed = false; attack.pressed = false;
@ -137,8 +137,8 @@ void DedicatedActor::playSound()
void DedicatedActor::setStatsDynamic() void DedicatedActor::setStatsDynamic()
{ {
// Only set dynamic stats if they have valid values // Only set dynamic stats if we have received at least one packet about them
if (creatureStats->mDynamic[0].mBase == -1) return; if (!hasStatsDynamicData) return;
MWMechanics::CreatureStats *ptrCreatureStats = &ptr.getClass().getCreatureStats(ptr); MWMechanics::CreatureStats *ptrCreatureStats = &ptr.getClass().getCreatureStats(ptr);
MWMechanics::DynamicStat<float> value; MWMechanics::DynamicStat<float> value;

View file

@ -25,6 +25,8 @@ namespace mwmp
MWWorld::Ptr getPtr(); MWWorld::Ptr getPtr();
void setPtr(const MWWorld::Ptr& newPtr); void setPtr(const MWWorld::Ptr& newPtr);
bool hasStatsDynamicData;
private: private:
MWWorld::Ptr ptr; MWWorld::Ptr ptr;