AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
CreatureAI.h File Reference
#include "AreaBoundary.h"
#include "Common.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 
234{
235 PERMIT_BASE_NO = -1,
241};
@ PERMIT_BASE_SPECIAL
Definition: CreatureAI.h:240
@ PERMIT_BASE_PROACTIVE
Definition: CreatureAI.h:238
@ PERMIT_BASE_NO
Definition: CreatureAI.h:235
@ PERMIT_BASE_REACTIVE
Definition: CreatureAI.h:237
@ PERMIT_BASE_FACTION_SPECIFIC
Definition: CreatureAI.h:239
@ PERMIT_BASE_IDLE
Definition: CreatureAI.h:236

◆ SCEquip

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

◆ SelectEffect

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

◆ 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 
41{
42 SELECT_TARGET_DONTCARE = 0, //All target types allowed
43
44 SELECT_TARGET_SELF, //Only Self casting
45
46 SELECT_TARGET_SINGLE_ENEMY, //Only Single Enemy
47 SELECT_TARGET_AOE_ENEMY, //Only AoE Enemy
48 SELECT_TARGET_ANY_ENEMY, //AoE or Single Enemy
49
50 SELECT_TARGET_SINGLE_FRIEND, //Only Single Friend
51 SELECT_TARGET_AOE_FRIEND, //Only AoE Friend
52 SELECT_TARGET_ANY_FRIEND, //AoE or Single Friend
53};
@ SELECT_TARGET_ANY_FRIEND
Definition: CreatureAI.h:52
@ SELECT_TARGET_AOE_FRIEND
Definition: CreatureAI.h:51
@ SELECT_TARGET_ANY_ENEMY
Definition: CreatureAI.h:48
@ SELECT_TARGET_SINGLE_FRIEND
Definition: CreatureAI.h:50
@ SELECT_TARGET_SINGLE_ENEMY
Definition: CreatureAI.h:46
@ SELECT_TARGET_DONTCARE
Definition: CreatureAI.h:42
@ SELECT_TARGET_SELF
Definition: CreatureAI.h:44
@ SELECT_TARGET_AOE_ENEMY
Definition: CreatureAI.h:47