diff options
Diffstat (limited to 'src/game/Pet.cpp')
-rw-r--r-- | src/game/Pet.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/game/Pet.cpp b/src/game/Pet.cpp index e33fe6b7178..a2d0c3ddd32 100644 --- a/src/game/Pet.cpp +++ b/src/game/Pet.cpp @@ -537,17 +537,19 @@ void Pet::Update(uint32 diff) { case POWER_FOCUS: Regenerate(POWER_FOCUS); - m_regenTimer = 4000; + m_regenTimer += 4000 - diff; + if(!m_regenTimer) ++m_regenTimer; break; case POWER_ENERGY: Regenerate(POWER_ENERGY); - m_regenTimer = 2000; + m_regenTimer += 2000 - diff; + if(!m_regenTimer) ++m_regenTimer; break; default: m_regenTimer = 0; break; } - } + } } if(getPetType() != HUNTER_PET) @@ -569,7 +571,7 @@ void Pet::Update(uint32 diff) Creature::Update(diff); } -void Pet::Regenerate(Powers power) +void Creature::Regenerate(Powers power) { uint32 curValue = GetPower(power); uint32 maxValue = GetMaxPower(power); |