1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-21 19:09:41 +00:00

[Client] Resurrect DedicatedActors that aren't supposed to be dead

This commit is contained in:
David Cernat 2017-05-05 20:38:28 +03:00
parent 8b4e167efe
commit b745a33f18
2 changed files with 9 additions and 7 deletions

View file

@ -152,6 +152,10 @@ void DedicatedActor::setStatsDynamic()
MWMechanics::CreatureStats *ptrCreatureStats = &ptr.getClass().getCreatureStats(ptr); MWMechanics::CreatureStats *ptrCreatureStats = &ptr.getClass().getCreatureStats(ptr);
MWMechanics::DynamicStat<float> value; MWMechanics::DynamicStat<float> value;
// Resurrect this Actor if it's not supposed to be dead according to its authority
if (creatureStats.mDynamic[0].mCurrent > 0)
ptrCreatureStats->resurrect();
for (int i = 0; i < 3; ++i) for (int i = 0; i < 3; ++i)
{ {
value.readState(creatureStats.mDynamic[i]); value.readState(creatureStats.mDynamic[i]);

View file

@ -64,12 +64,11 @@ void DedicatedPlayer::update(float dt)
return; return;
} }
value.readState(creatureStats.mDynamic[0]); for (int i = 0; i < 3; ++i)
ptrCreatureStats->setHealth(value); {
value.readState(creatureStats.mDynamic[1]); value.readState(creatureStats.mDynamic[i]);
ptrCreatureStats->setMagicka(value); ptrCreatureStats->setDynamic(i, value);
value.readState(creatureStats.mDynamic[2]); }
ptrCreatureStats->setFatigue(value);
if (ptrCreatureStats->isDead()) if (ptrCreatureStats->isDead())
ptrCreatureStats->resurrect(); ptrCreatureStats->resurrect();
@ -84,7 +83,6 @@ void DedicatedPlayer::update(float dt)
ptrCreatureStats->setAiSetting(MWMechanics::CreatureStats::AI_Flee, 0); ptrCreatureStats->setAiSetting(MWMechanics::CreatureStats::AI_Flee, 0);
ptrCreatureStats->setAiSetting(MWMechanics::CreatureStats::AI_Hello, 0); ptrCreatureStats->setAiSetting(MWMechanics::CreatureStats::AI_Hello, 0);
//ptrNpcStats->setBaseDisposition(255);
move(dt); move(dt);
updateAnimFlags(); updateAnimFlags();
} }