diff options
author | maximius <none@none> | 2009-09-21 20:50:05 -0700 |
---|---|---|
committer | maximius <none@none> | 2009-09-21 20:50:05 -0700 |
commit | c339f2df7b0785c3505887d2a254be2d4cc1a7b4 (patch) | |
tree | 2cc78bcea24ee5eb58da6d3b5fe4ab2423dcb437 /src | |
parent | ea2da8c75894d7b67b7626f539b66c3bb05bc5e0 (diff) |
*Force non-dead mobs that are either: out of combat, or polymorphed, to regenerate at each update, thanks Gyullo
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Creature.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp index 9a8eae73cfb..77b846b3d35 100644 --- a/src/game/Creature.cpp +++ b/src/game/Creature.cpp @@ -529,22 +529,23 @@ void Creature::Update(uint32 diff) if(!isAlive()) break; - if(m_regenTimer > diff) + bool bNotInCombatOrIsPolymorphed = (!isInCombat() || IsPolymorphed()); + + if(m_regenTimer > diff || bNotInCombatOrIsPolymorphed) m_regenTimer -= diff; else { - if (!isInCombat() || IsPolymorphed()) + if(bNotInCombatOrIsPolymorphed) RegenerateHealth(); if(getPowerType() == POWER_ENERGY) - { if(!IsVehicle() || GetVehicleKit()->GetVehicleInfo()->m_powerType != POWER_PYRITE) Regenerate(POWER_ENERGY); - } else RegenerateMana(); - m_regenTimer += 2000 - diff; + if(!bNotInCombatOrIsPolymorphed) + m_regenTimer += 2000 - diff; } break; |