TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
CreatureAIImpl.h File Reference
#include "Common.h"
#include "Define.h"
#include "TemporarySummon.h"
#include "CreatureAI.h"
#include "SpellMgr.h"
#include <functional>
#include <type_traits>
+ Include dependency graph for CreatureAIImpl.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  AISpellInfoType
 

Macros

#define AI_DEFAULT_COOLDOWN   5000
 

Enumerations

enum  AITarget {
  AITARGET_SELF, AITARGET_VICTIM, AITARGET_ENEMY, AITARGET_ALLY,
  AITARGET_BUFF, AITARGET_DEBUFF
}
 
enum  AICondition { AICOND_AGGRO, AICOND_COMBAT, AICOND_DIE }
 

Functions

template<typename First , typename Second , typename... Rest>
static First constRAND (First const &first, Second const &second, Rest const &...rest)
 
AISpellInfoTypeGetAISpellInfo (uint32 i)
 

Macro Definition Documentation

#define AI_DEFAULT_COOLDOWN   5000

Enumeration Type Documentation

Enumerator
AICOND_AGGRO 
AICOND_COMBAT 
AICOND_DIE 
47 {
51 };
Definition: CreatureAIImpl.h:48
Definition: CreatureAIImpl.h:50
Definition: CreatureAIImpl.h:49
enum AITarget
Enumerator
AITARGET_SELF 
AITARGET_VICTIM 
AITARGET_ENEMY 
AITARGET_ALLY 
AITARGET_BUFF 
AITARGET_DEBUFF 
37 {
44 };
Definition: CreatureAIImpl.h:43
Definition: CreatureAIImpl.h:40
Definition: CreatureAIImpl.h:42
Definition: CreatureAIImpl.h:41
Definition: CreatureAIImpl.h:38
Definition: CreatureAIImpl.h:39

Function Documentation

AISpellInfoType* GetAISpellInfo ( uint32  i)
40 { return &CreatureAI::AISpellInfo[i]; }
static AISpellInfoType * AISpellInfo
Definition: UnitAI.h:250

+ Here is the caller graph for this function:

template<typename First , typename Second , typename... Rest>
static First const& RAND ( First const first,
Second const second,
Rest const &...  rest 
)
inlinestatic
31 {
32  std::reference_wrapper<typename std::add_const<First>::type> const pack[] = { first, second, rest... };
33  return pack[urand(0, sizeof...(rest) + 1)].get();
34 }
uint32 urand(uint32 min, uint32 max)
Definition: Random.cpp:45

+ Here is the call graph for this function:

+ Here is the caller graph for this function: