aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMrSmite <no_mail@email.com>2012-03-16 19:34:04 -0400
committerMrSmite <no_mail@email.com>2012-03-16 19:34:04 -0400
commitb61759c9eac34665224fa77793eda9b2ffd87f5f (patch)
tree21e3748e7fc15b768693e326b1e057b6eec0b33c /src
parent65453620e8b9775507d9d4c895f485e639f16b07 (diff)
Pet - Fix focus regen gets stuck due to lag/high diffs
closes #5153
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Entities/Pet/Pet.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp
index e7103e2cb70..e13c5334788 100755
--- a/src/server/game/Entities/Pet/Pet.cpp
+++ b/src/server/game/Entities/Pet/Pet.cpp
@@ -537,7 +537,13 @@ void Pet::Update(uint32 diff)
Regenerate(POWER_FOCUS);
m_regenTimer += PET_FOCUS_REGEN_INTERVAL - diff;
if (!m_regenTimer) ++m_regenTimer;
+
+ // Reset if large diff (lag) causes focus to get 'stuck'
+ if (m_regenTimer > PET_FOCUS_REGEN_INTERVAL)
+ m_regenTimer = PET_FOCUS_REGEN_INTERVAL;
+
break;
+
// in creature::update
//case POWER_ENERGY:
// Regenerate(POWER_ENERGY);