mirror of
https://github.com/EQEmu/Server.git
synced 2026-03-06 18:42:27 +00:00
Fix for heal rotation 'Stack Overflow' error
This commit is contained in:
parent
3b6889d5d3
commit
817d8ceb64
@ -1,5 +1,8 @@
|
|||||||
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
||||||
-------------------------------------------------------
|
-------------------------------------------------------
|
||||||
|
== 03/25/2016 ==
|
||||||
|
Uleat: Fix for heal rotation 'Stack Overflow' error
|
||||||
|
|
||||||
== 03/24/2016 ==
|
== 03/24/2016 ==
|
||||||
Kayen: Fix for AE taunt to use correct range and hate modifier.
|
Kayen: Fix for AE taunt to use correct range and hate modifier.
|
||||||
Fix for spell effect version of taunt to use correct range.
|
Fix for spell effect version of taunt to use correct range.
|
||||||
|
|||||||
@ -47,6 +47,8 @@ HealRotation::HealRotation(Bot* hr_creator, uint32 interval_ms, bool fast_heals,
|
|||||||
ResetArmorTypeHPLimits();
|
ResetArmorTypeHPLimits();
|
||||||
|
|
||||||
m_is_active = false;
|
m_is_active = false;
|
||||||
|
|
||||||
|
m_consumed = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void HealRotation::SetIntervalMS(uint32 interval_ms)
|
void HealRotation::SetIntervalMS(uint32 interval_ms)
|
||||||
@ -502,8 +504,10 @@ bool HealRotation::valid_state()
|
|||||||
|
|
||||||
cycle_refresh();
|
cycle_refresh();
|
||||||
|
|
||||||
if (m_member_pool.empty())
|
if (m_member_pool.empty() && !m_consumed) { // Consumes HealRotation at this point
|
||||||
ClearTargetPool(); // Consumes HealRotation at this point
|
m_consumed = true;
|
||||||
|
ClearTargetPool();
|
||||||
|
}
|
||||||
|
|
||||||
return (!m_member_pool.empty());
|
return (!m_member_pool.empty());
|
||||||
}
|
}
|
||||||
|
|||||||
@ -127,6 +127,8 @@ private:
|
|||||||
|
|
||||||
bool m_is_active;
|
bool m_is_active;
|
||||||
|
|
||||||
|
bool m_consumed;
|
||||||
|
|
||||||
std::list<Bot*> m_member_pool;
|
std::list<Bot*> m_member_pool;
|
||||||
std::list<Bot*> m_cycle_pool;
|
std::list<Bot*> m_cycle_pool;
|
||||||
std::list<Mob*> m_target_pool;
|
std::list<Mob*> m_target_pool;
|
||||||
|
|||||||
@ -5891,7 +5891,7 @@ bool Mob::LeaveHealRotationTargetPool()
|
|||||||
|
|
||||||
m_target_of_heal_rotation->RemoveTargetFromPool(this);
|
m_target_of_heal_rotation->RemoveTargetFromPool(this);
|
||||||
m_target_of_heal_rotation.reset();
|
m_target_of_heal_rotation.reset();
|
||||||
|
|
||||||
return !IsHealRotationTarget();
|
return !IsHealRotationTarget();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user