Thread: aggro radius
View Single Post
  #1  
Old 06-26-2009, 07:03 PM
gaeorn
Developer
 
Join Date: Apr 2009
Location: USA
Posts: 478
Default aggro radius

I've been noticing that lull/harmony effects do not appear to have the expected effect. In particular, the monk phantom line of disciplines do not appear to reduce assist range. Looking through code, I found this:

Code:
void EntityList::AIYellForHelp(Mob* sender, Mob* attacker) {
        _ZP(EntityList_AIYellForHelp);
        if(!sender || !attacker)
                return;
        if (sender->GetPrimaryFaction() == 0 )
                return; // well, if we dont have a faction set, we're gonna be indiff to everybody
        
        LinkedListIterator<NPC*> iterator(npc_list);
        
        for(iterator.Reset(); iterator.MoreElements(); iterator.Advance()) {
                NPC* mob = iterator.GetData();
                if(!mob){
                        continue;
                }
                float r = mob->GetAssistRange();
                r = r * r;

                if(sender == NULL)
                        return;

                if (
                        mob != sender
                        && mob != attacker
//                      && !mob->IsCorpse()
//                      && mob->IsAIControlled()
                        && mob->GetPrimaryFaction() != 0
                        && mob->DistNoRoot(*sender) <= r
                        && !mob->IsEngaged()
                        )
                {
                        //if they are in range, make sure we are not green...
                        //then jump in if they are our friend
Is there a reason we are squaring the assist range of a mob before deciding to assist?
Reply With Quote