[Performance] Disabled enraged timer checks for NPC's that do not actually have enrage as a special attack

This commit is contained in:
Akkadius 2017-03-28 02:45:07 -05:00
parent 47691c2102
commit f931ef7bcb
2 changed files with 9 additions and 3 deletions

View File

@ -3,8 +3,9 @@ EQEMu Changelog (Started on Sept 24, 2003 15:50)
== 03/28/2017 ==
Akkadius: [Performance] Fixed a large overhead issue where every single NPC in a zone was checking to depop themselves
as a swarm pet every 3ms regardless of being a swarm pet or not. Swarm pets now check to depop only when their timer is up
Akkadius: [Performance] Removed Clients constantly calculating light amount on equipment every 600ms, instead clients will update
light when changing equipment or entering a zone
Akkadius: [Performance] Removed a timer where clients would constantly calculate light amount on equipment every 600ms, instead
clients will update light when changing equipment or entering a zone
Akkadius: [Performance] Disabled enraged timer checks for NPC's that do not actually have enrage as a special attack
== 03/27/2017 ==
Akkadius: [Performance] Reworked how client to NPC aggro checks are made
@ -26,7 +27,7 @@ Akkadius: [Performance] Reduced CPU footprint in cases where a client is checkin
- When zones have many players, with many NPC's, this adds up quickly
== 03/12/2017 ==
Akkadius:
Akkadius: [Performance]
- Implemented range rules for packets and other functions
RULE_INT ( Range, Say, 135 )
RULE_INT ( Range, Emote, 135 )

View File

@ -717,6 +717,11 @@ bool NPC::Process()
if (enraged_timer.Check()){
ProcessEnrage();
/* Don't keep running the check every second if we don't have enrage */
if (!GetSpecialAbility(SPECATK_ENRAGE)) {
enraged_timer.Disable();
}
}
//Handle assists...