mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 01:11:29 +00:00
Port PROX_AGGRO from EQMacEmu
If this ability is set, the NPCs will continuously add things to their hate list while their engaged. If it's not set (default) they won't, which is what the vast majority of NPCs do on live.
This commit is contained in:
parent
839b6e25d8
commit
43586a33cd
@ -285,6 +285,14 @@ bool Mob::CheckWillAggro(Mob *mob) {
|
|||||||
return(false);
|
return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Don't aggro new clients if we are already engaged unless PROX_AGGRO is set
|
||||||
|
if (IsEngaged() && (!GetSpecialAbility(PROX_AGGRO) || (GetSpecialAbility(PROX_AGGRO) && !CombatRange(mob)))) {
|
||||||
|
Log.Out(Logs::Moderate, Logs::Aggro,
|
||||||
|
"%s is in combat, and does not have prox_aggro, or does and is out of combat range with %s",
|
||||||
|
GetName(), mob->GetName());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
//im not sure I understand this..
|
//im not sure I understand this..
|
||||||
//if I have an owner and it is not this mob, then I cannot
|
//if I have an owner and it is not this mob, then I cannot
|
||||||
//aggro this mob...???
|
//aggro this mob...???
|
||||||
|
|||||||
@ -138,7 +138,8 @@ enum {
|
|||||||
IGNORE_ROOT_AGGRO_RULES = 42,
|
IGNORE_ROOT_AGGRO_RULES = 42,
|
||||||
CASTING_RESIST_DIFF = 43,
|
CASTING_RESIST_DIFF = 43,
|
||||||
COUNTER_AVOID_DAMAGE = 44,
|
COUNTER_AVOID_DAMAGE = 44,
|
||||||
MAX_SPECIAL_ATTACK = 45
|
PROX_AGGRO = 45,
|
||||||
|
MAX_SPECIAL_ATTACK = 46
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef enum { //fear states
|
typedef enum { //fear states
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user