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/game/Creature.cpp | |
| 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/game/Creature.cpp')
| -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;  | 
