AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
CreatureAI.h File Reference
#include "AreaBoundary.h"
#include "Creature.h"
#include "EventMap.h"
#include "TaskScheduler.h"
#include "UnitAI.h"

Go to the source code of this file.

Classes

class  CreatureAI
 

Macros

#define TIME_INTERVAL_LOOK   5000
 
#define VISIBILITY_RANGE   10000
 

Typedefs

typedef std::vector< AreaBoundary const * > CreatureBoundary
 

Enumerations

enum  SelectTargetType {
  SELECT_TARGET_DONTCARE = 0 ,
  SELECT_TARGET_SELF ,
  SELECT_TARGET_SINGLE_ENEMY ,
  SELECT_TARGET_AOE_ENEMY ,
  SELECT_TARGET_ANY_ENEMY ,
  SELECT_TARGET_SINGLE_FRIEND ,
  SELECT_TARGET_AOE_FRIEND ,
  SELECT_TARGET_ANY_FRIEND
}
 
enum  SelectEffect {
  SELECT_EFFECT_DONTCARE = 0 ,
  SELECT_EFFECT_DAMAGE ,
  SELECT_EFFECT_HEALING ,
  SELECT_EFFECT_AURA
}
 
enum  SCEquip {
  EQUIP_NO_CHANGE = -1 ,
  EQUIP_UNEQUIP = 0
}
 
enum  Permitions : int32 {
  PERMIT_BASE_NO = -1 ,
  PERMIT_BASE_IDLE = 1 ,
  PERMIT_BASE_REACTIVE = 100 ,
  PERMIT_BASE_PROACTIVE = 200 ,
  PERMIT_BASE_FACTION_SPECIFIC = 400 ,
  PERMIT_BASE_SPECIAL = 800
}
 

Macro Definition Documentation

◆ TIME_INTERVAL_LOOK

#define TIME_INTERVAL_LOOK   5000

◆ VISIBILITY_RANGE

#define VISIBILITY_RANGE   10000

Typedef Documentation

◆ CreatureBoundary

typedef std::vector<AreaBoundary const*> CreatureBoundary

Enumeration Type Documentation

◆ Permitions

enum Permitions : int32
Enumerator
PERMIT_BASE_NO 
PERMIT_BASE_IDLE 
PERMIT_BASE_REACTIVE 
PERMIT_BASE_PROACTIVE 
PERMIT_BASE_FACTION_SPECIFIC 
PERMIT_BASE_SPECIAL 
240{
241 PERMIT_BASE_NO = -1,
247};
@ PERMIT_BASE_SPECIAL
Definition: CreatureAI.h:246
@ PERMIT_BASE_PROACTIVE
Definition: CreatureAI.h:244
@ PERMIT_BASE_NO
Definition: CreatureAI.h:241
@ PERMIT_BASE_REACTIVE
Definition: CreatureAI.h:243
@ PERMIT_BASE_FACTION_SPECIFIC
Definition: CreatureAI.h:245
@ PERMIT_BASE_IDLE
Definition: CreatureAI.h:242

◆ SCEquip

enum SCEquip
Enumerator
EQUIP_NO_CHANGE 
EQUIP_UNEQUIP 
64{
65 EQUIP_NO_CHANGE = -1,
67};
@ EQUIP_UNEQUIP
Definition: CreatureAI.h:66
@ EQUIP_NO_CHANGE
Definition: CreatureAI.h:65

◆ SelectEffect

Enumerator
SELECT_EFFECT_DONTCARE 
SELECT_EFFECT_DAMAGE 
SELECT_EFFECT_HEALING 
SELECT_EFFECT_AURA 
56{
57 SELECT_EFFECT_DONTCARE = 0, //All spell effects allowed
58 SELECT_EFFECT_DAMAGE, //Spell does damage
59 SELECT_EFFECT_HEALING, //Spell does healing
60 SELECT_EFFECT_AURA, //Spell applies an aura
61};
@ SELECT_EFFECT_DONTCARE
Definition: CreatureAI.h:57
@ SELECT_EFFECT_AURA
Definition: CreatureAI.h:60
@ SELECT_EFFECT_HEALING
Definition: CreatureAI.h:59
@ SELECT_EFFECT_DAMAGE
Definition: CreatureAI.h:58

◆ SelectTargetType

Enumerator
SELECT_TARGET_DONTCARE 
SELECT_TARGET_SELF 
SELECT_TARGET_SINGLE_ENEMY 
SELECT_TARGET_AOE_ENEMY 
SELECT_TARGET_ANY_ENEMY 
SELECT_TARGET_SINGLE_FRIEND 
SELECT_TARGET_AOE_FRIEND 
SELECT_TARGET_ANY_FRIEND 
40{
41 SELECT_TARGET_DONTCARE = 0, //All target types allowed
42
43 SELECT_TARGET_SELF, //Only Self casting
44
45 SELECT_TARGET_SINGLE_ENEMY, //Only Single Enemy
46 SELECT_TARGET_AOE_ENEMY, //Only AoE Enemy
47 SELECT_TARGET_ANY_ENEMY, //AoE or Single Enemy
48
49 SELECT_TARGET_SINGLE_FRIEND, //Only Single Friend
50 SELECT_TARGET_AOE_FRIEND, //Only AoE Friend
51 SELECT_TARGET_ANY_FRIEND, //AoE or Single Friend
52};
@ SELECT_TARGET_ANY_FRIEND
Definition: CreatureAI.h:51
@ SELECT_TARGET_AOE_FRIEND
Definition: CreatureAI.h:50
@ SELECT_TARGET_ANY_ENEMY
Definition: CreatureAI.h:47
@ SELECT_TARGET_SINGLE_FRIEND
Definition: CreatureAI.h:49
@ SELECT_TARGET_SINGLE_ENEMY
Definition: CreatureAI.h:45
@ SELECT_TARGET_DONTCARE
Definition: CreatureAI.h:41
@ SELECT_TARGET_SELF
Definition: CreatureAI.h:43
@ SELECT_TARGET_AOE_ENEMY
Definition: CreatureAI.h:46