mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-31 11:51:28 +00:00
Add a timer to rate limit the hatelist check
This commit is contained in:
parent
d8bbb428d8
commit
e7ce79261d
@ -115,7 +115,8 @@ Mob::Mob(const char* in_name,
|
||||
fix_z_timer(300),
|
||||
fix_z_timer_engaged(100),
|
||||
attack_anim_timer(1000),
|
||||
position_update_melee_push_timer(1000)
|
||||
position_update_melee_push_timer(1000),
|
||||
mHateListCleanup(3000)
|
||||
{
|
||||
targeted = 0;
|
||||
tar_ndx = 0;
|
||||
|
||||
@ -1419,6 +1419,7 @@ protected:
|
||||
void AddItemFactionBonus(uint32 pFactionID,int32 bonus);
|
||||
int32 GetItemFactionBonus(uint32 pFactionID);
|
||||
void ClearItemFactionBonuses();
|
||||
Timer mHateListCleanup;
|
||||
|
||||
void CalculateFearPosition();
|
||||
|
||||
|
||||
@ -1024,7 +1024,8 @@ void Mob::AI_Process() {
|
||||
|
||||
// NPCs will forget people after 10 mins of not interacting with them or out of range
|
||||
// both of these maybe zone specific, hardcoded for now
|
||||
hate_list.RemoveStaleEntries(600000, 600.0f);
|
||||
if (mHateListCleanup.Check())
|
||||
hate_list.RemoveStaleEntries(600000, 600.0f);
|
||||
// we are prevented from getting here if we are blind and don't have a target in range
|
||||
// from above, so no extra blind checks needed
|
||||
if ((IsRooted() && !GetSpecialAbility(IGNORE_ROOT_AGGRO_RULES)) || IsBlind())
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user