mirror of
https://github.com/EQEmu/Server.git
synced 2026-03-03 02:52:26 +00:00
Added param to special attack NPC_NO_CHASE
Param 2 = If set will disable LOS check
This commit is contained in:
parent
b36cc3ab08
commit
b3ea7ecd0d
@ -877,8 +877,12 @@ bool Mob::CombatRange(Mob* other)
|
|||||||
|
|
||||||
if (GetSpecialAbility(NPC_CHASE_DISTANCE)){
|
if (GetSpecialAbility(NPC_CHASE_DISTANCE)){
|
||||||
|
|
||||||
|
bool DoLoSCheck = true;
|
||||||
float max_dist = static_cast<float>(GetSpecialAbilityParam(NPC_CHASE_DISTANCE, 0));
|
float max_dist = static_cast<float>(GetSpecialAbilityParam(NPC_CHASE_DISTANCE, 0));
|
||||||
float min_dist = static_cast<float>(GetSpecialAbilityParam(NPC_CHASE_DISTANCE, 1));
|
float min_dist = static_cast<float>(GetSpecialAbilityParam(NPC_CHASE_DISTANCE, 1));
|
||||||
|
|
||||||
|
if (GetSpecialAbilityParam(NPC_CHASE_DISTANCE, 2));
|
||||||
|
DoLoSCheck = false; //Ignore line of sight check
|
||||||
|
|
||||||
if (max_dist == 1)
|
if (max_dist == 1)
|
||||||
max_dist = 250.0f; //Default it to 250 if you forget to put a value
|
max_dist = 250.0f; //Default it to 250 if you forget to put a value
|
||||||
@ -890,7 +894,7 @@ bool Mob::CombatRange(Mob* other)
|
|||||||
else
|
else
|
||||||
min_dist = min_dist * min_dist;
|
min_dist = min_dist * min_dist;
|
||||||
|
|
||||||
if (CheckLastLosState() && (_DistNoRoot >= min_dist && _DistNoRoot <= max_dist))
|
if ((DoLoSCheck && CheckLastLosState()) && (_DistNoRoot >= min_dist && _DistNoRoot <= max_dist))
|
||||||
SetPseudoRoot(true);
|
SetPseudoRoot(true);
|
||||||
else
|
else
|
||||||
SetPseudoRoot(false);
|
SetPseudoRoot(false);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user