TrinityCore
Loading...
Searching...
No Matches
Unit.h File Reference
#include "Object.h"
#include "CombatManager.h"
#include "SpellAuraDefines.h"
#include "PetDefines.h"
#include "ThreatManager.h"
#include "Timer.h"
#include "UnitDefines.h"
#include "Util.h"
#include <map>
#include <memory>
#include <stack>
#include <queue>
+ Include dependency graph for Unit.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  DispelableAura
 
struct  PlayerMovementPendingChange
 
struct  PlayerMovementPendingChange::KnockbackInfo
 
struct  DiminishingReturn
 
class  DispelInfo
 
struct  CleanDamage
 
class  DamageInfo
 
class  HealInfo
 
class  ProcEventInfo
 
struct  CalcDamageInfo
 
struct  SpellNonMeleeDamage
 
struct  SpellPeriodicAuraLogInfo
 
struct  UnitActionBarEntry
 
struct  CharmInfo
 
struct  PositionUpdateInfo
 
class  Unit
 
class  Trinity::PowerPctOrderPred
 
class  Trinity::HealthPctOrderPred
 

Namespaces

namespace  Movement
 
namespace  Trinity
 

Macros

#define VISUAL_WAYPOINT   1
 
#define WORLD_TRIGGER   12999
 
#define MAX_SPELL_CHARM   4
 
#define MAX_SPELL_VEHICLE   6
 
#define MAX_SPELL_POSSESS   8
 
#define MAX_SPELL_CONTROL_BAR   10
 
#define MAX_AGGRO_RESET_TIME   10
 
#define MAX_AGGRO_RADIUS   45.0f
 
#define MAX_COMBAT_RATING   25
 
#define CURRENT_FIRST_NON_MELEE_SPELL   1
 
#define CURRENT_MAX_SPELL   4
 
#define UNIT_ACTION_BUTTON_ACTION(X)   (uint32(X) & 0x00FFFFFF)
 
#define UNIT_ACTION_BUTTON_TYPE(X)   ((uint32(X) & 0xFF000000) >> 24)
 
#define MAKE_UNIT_ACTION_BUTTON(A, T)   (uint32(A) | (uint32(T) << 24))
 
#define MAX_UNIT_ACTION_BAR_INDEX   (ACTION_BAR_INDEX_END-ACTION_BAR_INDEX_START)
 
#define REACTIVE_TIMER_START   4000
 
#define ATTACK_DISPLAY_DELAY   200
 
#define MAX_PLAYER_STEALTH_DETECT_RANGE   30.0f
 

Typedefs

typedef std::list< Unit * > UnitList
 
typedef std::vector< DispelableAuraDispelChargesList
 
typedef std::unordered_multimap< uint32, uint32SpellImmuneContainer
 
typedef std::list< Player * > SharedVisionList
 
typedef UnitActionBarEntry CharmSpellInfo
 

Enumerations

enum  VictimState {
  VICTIMSTATE_INTACT = 0 , VICTIMSTATE_HIT = 1 , VICTIMSTATE_DODGE = 2 , VICTIMSTATE_PARRY = 3 ,
  VICTIMSTATE_INTERRUPT = 4 , VICTIMSTATE_BLOCKS = 5 , VICTIMSTATE_EVADES = 6 , VICTIMSTATE_IS_IMMUNE = 7 ,
  VICTIMSTATE_DEFLECTS = 8
}
 
enum  InventorySlot { NULL_BAG = 0 , NULL_SLOT = 255 }
 
enum  UnitModifierFlatType { BASE_VALUE = 0 , TOTAL_VALUE = 1 , MODIFIER_TYPE_FLAT_END = 2 }
 
enum  UnitModifierPctType { BASE_PCT = 0 , TOTAL_PCT = 1 , MODIFIER_TYPE_PCT_END = 2 }
 
enum  WeaponDamageRange { MINDAMAGE , MAXDAMAGE }
 
enum  UnitMods {
  UNIT_MOD_STAT_STRENGTH , UNIT_MOD_STAT_AGILITY , UNIT_MOD_STAT_STAMINA , UNIT_MOD_STAT_INTELLECT ,
  UNIT_MOD_STAT_SPIRIT , UNIT_MOD_HEALTH , UNIT_MOD_MANA , UNIT_MOD_RAGE ,
  UNIT_MOD_FOCUS , UNIT_MOD_ENERGY , UNIT_MOD_HAPPINESS , UNIT_MOD_RUNE ,
  UNIT_MOD_RUNIC_POWER , UNIT_MOD_ARMOR , UNIT_MOD_RESISTANCE_HOLY , UNIT_MOD_RESISTANCE_FIRE ,
  UNIT_MOD_RESISTANCE_NATURE , UNIT_MOD_RESISTANCE_FROST , UNIT_MOD_RESISTANCE_SHADOW , UNIT_MOD_RESISTANCE_ARCANE ,
  UNIT_MOD_ATTACK_POWER , UNIT_MOD_ATTACK_POWER_RANGED , UNIT_MOD_DAMAGE_MAINHAND , UNIT_MOD_DAMAGE_OFFHAND ,
  UNIT_MOD_DAMAGE_RANGED , UNIT_MOD_END , UNIT_MOD_STAT_START = UNIT_MOD_STAT_STRENGTH , UNIT_MOD_STAT_END = UNIT_MOD_STAT_SPIRIT + 1 ,
  UNIT_MOD_RESISTANCE_START = UNIT_MOD_ARMOR , UNIT_MOD_RESISTANCE_END = UNIT_MOD_RESISTANCE_ARCANE + 1 , UNIT_MOD_POWER_START = UNIT_MOD_MANA , UNIT_MOD_POWER_END = UNIT_MOD_RUNIC_POWER + 1
}
 
enum  BaseModGroup {
  CRIT_PERCENTAGE , RANGED_CRIT_PERCENTAGE , OFFHAND_CRIT_PERCENTAGE , SHIELD_BLOCK_VALUE ,
  BASEMOD_END
}
 
enum  BaseModType { FLAT_MOD , PCT_MOD , MOD_END }
 
enum  DeathState {
  ALIVE = 0 , JUST_DIED = 1 , CORPSE = 2 , DEAD = 3 ,
  JUST_RESPAWNED = 4
}
 
enum  UnitState : uint32 {
  UNIT_STATE_DIED = 0x00000001 , UNIT_STATE_MELEE_ATTACKING = 0x00000002 , UNIT_STATE_CHARMED = 0x00000004 , UNIT_STATE_STUNNED = 0x00000008 ,
  UNIT_STATE_ROAMING = 0x00000010 , UNIT_STATE_CHASE = 0x00000020 , UNIT_STATE_FOCUSING = 0x00000040 , UNIT_STATE_FLEEING = 0x00000080 ,
  UNIT_STATE_IN_FLIGHT = 0x00000100 , UNIT_STATE_FOLLOW = 0x00000200 , UNIT_STATE_ROOT = 0x00000400 , UNIT_STATE_CONFUSED = 0x00000800 ,
  UNIT_STATE_DISTRACTED = 0x00001000 , UNIT_STATE_ISOLATED = 0x00002000 , UNIT_STATE_ATTACK_PLAYER = 0x00004000 , UNIT_STATE_CASTING = 0x00008000 ,
  UNIT_STATE_POSSESSED = 0x00010000 , UNIT_STATE_CHARGING = 0x00020000 , UNIT_STATE_JUMPING = 0x00040000 , UNIT_STATE_FOLLOW_FORMATION = 0x00080000 ,
  UNIT_STATE_MOVE = 0x00100000 , UNIT_STATE_ROTATING = 0x00200000 , UNIT_STATE_EVADE = 0x00400000 , UNIT_STATE_ROAMING_MOVE = 0x00800000 ,
  UNIT_STATE_CONFUSED_MOVE = 0x01000000 , UNIT_STATE_FLEEING_MOVE = 0x02000000 , UNIT_STATE_CHASE_MOVE = 0x04000000 , UNIT_STATE_FOLLOW_MOVE = 0x08000000 ,
  UNIT_STATE_IGNORE_PATHFINDING = 0x10000000 , UNIT_STATE_FOLLOW_FORMATION_MOVE = 0x20000000 , UNIT_STATE_ALL_STATE_SUPPORTED , UNIT_STATE_UNATTACKABLE = UNIT_STATE_IN_FLIGHT ,
  UNIT_STATE_MOVING = UNIT_STATE_ROAMING_MOVE | UNIT_STATE_CONFUSED_MOVE | UNIT_STATE_FLEEING_MOVE | UNIT_STATE_CHASE_MOVE | UNIT_STATE_FOLLOW_MOVE | UNIT_STATE_FOLLOW_FORMATION_MOVE , UNIT_STATE_CONTROLLED = UNIT_STATE_CONFUSED | UNIT_STATE_STUNNED | UNIT_STATE_FLEEING , UNIT_STATE_LOST_CONTROL = UNIT_STATE_CONTROLLED | UNIT_STATE_POSSESSED | UNIT_STATE_JUMPING | UNIT_STATE_CHARGING , UNIT_STATE_CANNOT_AUTOATTACK = UNIT_STATE_CONTROLLED | UNIT_STATE_CHARGING | UNIT_STATE_CASTING ,
  UNIT_STATE_SIGHTLESS = UNIT_STATE_LOST_CONTROL | UNIT_STATE_EVADE , UNIT_STATE_CANNOT_TURN = UNIT_STATE_LOST_CONTROL | UNIT_STATE_ROTATING | UNIT_STATE_FOCUSING , UNIT_STATE_NOT_MOVE = UNIT_STATE_ROOT | UNIT_STATE_STUNNED | UNIT_STATE_DIED | UNIT_STATE_DISTRACTED , UNIT_STATE_ALL_ERASABLE = UNIT_STATE_ALL_STATE_SUPPORTED & ~(UNIT_STATE_IGNORE_PATHFINDING) ,
  UNIT_STATE_ALL_STATE = 0xffffffff
}
 
enum class  MovementChangeType : uint8 {
  INVALID , ROOT , WATER_WALK , SET_HOVER ,
  SET_CAN_FLY , SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY , FEATHER_FALL , GRAVITY_DISABLE ,
  SPEED_CHANGE_WALK , SPEED_CHANGE_RUN , SPEED_CHANGE_RUN_BACK , SPEED_CHANGE_SWIM ,
  SPEED_CHANGE_SWIM_BACK , RATE_CHANGE_TURN , SPEED_CHANGE_FLIGHT_SPEED , SPEED_CHANGE_FLIGHT_BACK_SPEED ,
  RATE_CHANGE_PITCH , SET_COLLISION_HGT , TELEPORT , KNOCK_BACK
}
 
enum  CombatRating {
  CR_WEAPON_SKILL = 0 , CR_DEFENSE_SKILL = 1 , CR_DODGE = 2 , CR_PARRY = 3 ,
  CR_BLOCK = 4 , CR_HIT_MELEE = 5 , CR_HIT_RANGED = 6 , CR_HIT_SPELL = 7 ,
  CR_CRIT_MELEE = 8 , CR_CRIT_RANGED = 9 , CR_CRIT_SPELL = 10 , CR_HIT_TAKEN_MELEE = 11 ,
  CR_HIT_TAKEN_RANGED = 12 , CR_HIT_TAKEN_SPELL = 13 , CR_CRIT_TAKEN_MELEE = 14 , CR_CRIT_TAKEN_RANGED = 15 ,
  CR_CRIT_TAKEN_SPELL = 16 , CR_HASTE_MELEE = 17 , CR_HASTE_RANGED = 18 , CR_HASTE_SPELL = 19 ,
  CR_WEAPON_SKILL_MAINHAND = 20 , CR_WEAPON_SKILL_OFFHAND = 21 , CR_WEAPON_SKILL_RANGED = 22 , CR_EXPERTISE = 23 ,
  CR_ARMOR_PENETRATION = 24
}
 
enum  DamageEffectType : uint8 {
  DIRECT_DAMAGE = 0 , SPELL_DIRECT_DAMAGE = 1 , DOT = 2 , HEAL = 3 ,
  NODAMAGE = 4 , SELF_DAMAGE = 5
}
 
enum  UnitTypeMask {
  UNIT_MASK_NONE = 0x00000000 , UNIT_MASK_SUMMON = 0x00000001 , UNIT_MASK_MINION = 0x00000002 , UNIT_MASK_GUARDIAN = 0x00000004 ,
  UNIT_MASK_TOTEM = 0x00000008 , UNIT_MASK_PET = 0x00000010 , UNIT_MASK_VEHICLE = 0x00000020 , UNIT_MASK_PUPPET = 0x00000040 ,
  UNIT_MASK_HUNTER_PET = 0x00000080 , UNIT_MASK_CONTROLABLE_GUARDIAN = 0x00000100 , UNIT_MASK_ACCESSORY = 0x00000200
}
 
enum  MeleeHitOutcome : uint8 {
  MELEE_HIT_EVADE , MELEE_HIT_MISS , MELEE_HIT_DODGE , MELEE_HIT_BLOCK ,
  MELEE_HIT_PARRY , MELEE_HIT_GLANCING , MELEE_HIT_CRIT , MELEE_HIT_CRUSHING ,
  MELEE_HIT_NORMAL
}
 
enum  CurrentSpellTypes : uint8 { CURRENT_MELEE_SPELL = 0 , CURRENT_GENERIC_SPELL = 1 , CURRENT_CHANNELED_SPELL = 2 , CURRENT_AUTOREPEAT_SPELL = 3 }
 
enum  CharmType { CHARM_TYPE_CHARM , CHARM_TYPE_POSSESS , CHARM_TYPE_VEHICLE , CHARM_TYPE_CONVERT }
 
enum  ActionBarIndex { ACTION_BAR_INDEX_START = 0 , ACTION_BAR_INDEX_PET_SPELL_START = 3 , ACTION_BAR_INDEX_PET_SPELL_END = 7 , ACTION_BAR_INDEX_END = 10 }
 
enum  ReactiveType {
  REACTIVE_DEFENSE = 0 , REACTIVE_HUNTER_PARRY = 1 , REACTIVE_OVERPOWER = 2 , REACTIVE_WOLVERINE_BITE = 3 ,
  MAX_REACTIVE
}
 

Functions

uint32 createProcHitMask (SpellNonMeleeDamage *damageInfo, SpellMissInfo missCondition)
 

Variables

TC_GAME_API float baseMoveSpeed [MAX_MOVE_TYPE]
 
TC_GAME_API float playerBaseMoveSpeed [MAX_MOVE_TYPE]
 

Macro Definition Documentation

◆ ATTACK_DISPLAY_DELAY

#define ATTACK_DISPLAY_DELAY   200

Definition at line 765 of file Unit.h.

◆ CURRENT_FIRST_NON_MELEE_SPELL

#define CURRENT_FIRST_NON_MELEE_SPELL   1

Definition at line 612 of file Unit.h.

◆ CURRENT_MAX_SPELL

#define CURRENT_MAX_SPELL   4

Definition at line 613 of file Unit.h.

◆ MAKE_UNIT_ACTION_BUTTON

#define MAKE_UNIT_ACTION_BUTTON (   A,
 
)    (uint32(A) | (uint32(T) << 24))

Definition at line 617 of file Unit.h.

◆ MAX_AGGRO_RADIUS

#define MAX_AGGRO_RADIUS   45.0f

Definition at line 43 of file Unit.h.

◆ MAX_AGGRO_RESET_TIME

#define MAX_AGGRO_RESET_TIME   10

Definition at line 42 of file Unit.h.

◆ MAX_COMBAT_RATING

#define MAX_COMBAT_RATING   25

Definition at line 349 of file Unit.h.

◆ MAX_PLAYER_STEALTH_DETECT_RANGE

#define MAX_PLAYER_STEALTH_DETECT_RANGE   30.0f

Definition at line 766 of file Unit.h.

◆ MAX_SPELL_CHARM

#define MAX_SPELL_CHARM   4

Definition at line 37 of file Unit.h.

◆ MAX_SPELL_CONTROL_BAR

#define MAX_SPELL_CONTROL_BAR   10

Definition at line 40 of file Unit.h.

◆ MAX_SPELL_POSSESS

#define MAX_SPELL_POSSESS   8

Definition at line 39 of file Unit.h.

◆ MAX_SPELL_VEHICLE

#define MAX_SPELL_VEHICLE   6

Definition at line 38 of file Unit.h.

◆ MAX_UNIT_ACTION_BAR_INDEX

#define MAX_UNIT_ACTION_BAR_INDEX   (ACTION_BAR_INDEX_END-ACTION_BAR_INDEX_START)

Definition at line 670 of file Unit.h.

◆ REACTIVE_TIMER_START

#define REACTIVE_TIMER_START   4000

Definition at line 741 of file Unit.h.

◆ UNIT_ACTION_BUTTON_ACTION

#define UNIT_ACTION_BUTTON_ACTION (   X)    (uint32(X) & 0x00FFFFFF)

Definition at line 615 of file Unit.h.

◆ UNIT_ACTION_BUTTON_TYPE

#define UNIT_ACTION_BUTTON_TYPE (   X)    ((uint32(X) & 0xFF000000) >> 24)

Definition at line 616 of file Unit.h.

◆ VISUAL_WAYPOINT

#define VISUAL_WAYPOINT   1

Definition at line 34 of file Unit.h.

◆ WORLD_TRIGGER

#define WORLD_TRIGGER   12999

Definition at line 35 of file Unit.h.

Typedef Documentation

◆ CharmSpellInfo

Definition at line 660 of file Unit.h.

◆ DispelChargesList

typedef std::vector<DispelableAura> DispelChargesList

Definition at line 132 of file Unit.h.

◆ SharedVisionList

typedef std::list<Player*> SharedVisionList

Definition at line 650 of file Unit.h.

◆ SpellImmuneContainer

typedef std::unordered_multimap<uint32 , uint32 > SpellImmuneContainer

Definition at line 134 of file Unit.h.

◆ UnitList

typedef std::list<Unit*> UnitList

Definition at line 105 of file Unit.h.

Enumeration Type Documentation

◆ ActionBarIndex

Enumerator
ACTION_BAR_INDEX_START 
ACTION_BAR_INDEX_PET_SPELL_START 
ACTION_BAR_INDEX_PET_SPELL_END 
ACTION_BAR_INDEX_END 

Definition at line 662 of file Unit.h.

◆ BaseModGroup

Enumerator
CRIT_PERCENTAGE 
RANGED_CRIT_PERCENTAGE 
OFFHAND_CRIT_PERCENTAGE 
SHIELD_BLOCK_VALUE 
BASEMOD_END 

Definition at line 193 of file Unit.h.

◆ BaseModType

Enumerator
FLAT_MOD 
PCT_MOD 
MOD_END 

Definition at line 202 of file Unit.h.

◆ CharmType

enum CharmType
Enumerator
CHARM_TYPE_CHARM 
CHARM_TYPE_POSSESS 
CHARM_TYPE_VEHICLE 
CHARM_TYPE_CONVERT 

Definition at line 652 of file Unit.h.

◆ CombatRating

Enumerator
CR_WEAPON_SKILL 
CR_DEFENSE_SKILL 
CR_DODGE 
CR_PARRY 
CR_BLOCK 
CR_HIT_MELEE 
CR_HIT_RANGED 
CR_HIT_SPELL 
CR_CRIT_MELEE 
CR_CRIT_RANGED 
CR_CRIT_SPELL 
CR_HIT_TAKEN_MELEE 
CR_HIT_TAKEN_RANGED 
CR_HIT_TAKEN_SPELL 
CR_CRIT_TAKEN_MELEE 
CR_CRIT_TAKEN_RANGED 
CR_CRIT_TAKEN_SPELL 
CR_HASTE_MELEE 
CR_HASTE_RANGED 
CR_HASTE_SPELL 
CR_WEAPON_SKILL_MAINHAND 
CR_WEAPON_SKILL_OFFHAND 
CR_WEAPON_SKILL_RANGED 
CR_EXPERTISE 
CR_ARMOR_PENETRATION 

Definition at line 320 of file Unit.h.

◆ CurrentSpellTypes

Enumerator
CURRENT_MELEE_SPELL 
CURRENT_GENERIC_SPELL 
CURRENT_CHANNELED_SPELL 
CURRENT_AUTOREPEAT_SPELL 

Definition at line 604 of file Unit.h.

◆ DamageEffectType

Enumerator
DIRECT_DAMAGE 
SPELL_DIRECT_DAMAGE 
DOT 
HEAL 
NODAMAGE 
SELF_DAMAGE 

Definition at line 351 of file Unit.h.

◆ DeathState

enum DeathState
Enumerator
ALIVE 
JUST_DIED 
CORPSE 
DEAD 
JUST_RESPAWNED 

Definition at line 209 of file Unit.h.

◆ InventorySlot

Enumerator
NULL_BAG 
NULL_SLOT 

Definition at line 59 of file Unit.h.

◆ MeleeHitOutcome

Enumerator
MELEE_HIT_EVADE 
MELEE_HIT_MISS 
MELEE_HIT_DODGE 
MELEE_HIT_BLOCK 
MELEE_HIT_PARRY 
MELEE_HIT_GLANCING 
MELEE_HIT_CRIT 
MELEE_HIT_CRUSHING 
MELEE_HIT_NORMAL 

Definition at line 392 of file Unit.h.

◆ MovementChangeType

enum class MovementChangeType : uint8
strong
Enumerator
INVALID 
ROOT 
WATER_WALK 
SET_HOVER 
SET_CAN_FLY 
SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY 
FEATHER_FALL 
GRAVITY_DISABLE 
SPEED_CHANGE_WALK 
SPEED_CHANGE_RUN 
SPEED_CHANGE_RUN_BACK 
SPEED_CHANGE_SWIM 
SPEED_CHANGE_SWIM_BACK 
RATE_CHANGE_TURN 
SPEED_CHANGE_FLIGHT_SPEED 
SPEED_CHANGE_FLIGHT_BACK_SPEED 
RATE_CHANGE_PITCH 
SET_COLLISION_HGT 
TELEPORT 
KNOCK_BACK 

Definition at line 274 of file Unit.h.

◆ ReactiveType

Enumerator
REACTIVE_DEFENSE 
REACTIVE_HUNTER_PARRY 
REACTIVE_OVERPOWER 
REACTIVE_WOLVERINE_BITE 
MAX_REACTIVE 

Definition at line 743 of file Unit.h.

◆ UnitModifierFlatType

Enumerator
BASE_VALUE 
TOTAL_VALUE 
MODIFIER_TYPE_FLAT_END 

Definition at line 136 of file Unit.h.

◆ UnitModifierPctType

Enumerator
BASE_PCT 
TOTAL_PCT 
MODIFIER_TYPE_PCT_END 

Definition at line 143 of file Unit.h.

◆ UnitMods

enum UnitMods
Enumerator
UNIT_MOD_STAT_STRENGTH 
UNIT_MOD_STAT_AGILITY 
UNIT_MOD_STAT_STAMINA 
UNIT_MOD_STAT_INTELLECT 
UNIT_MOD_STAT_SPIRIT 
UNIT_MOD_HEALTH 
UNIT_MOD_MANA 
UNIT_MOD_RAGE 
UNIT_MOD_FOCUS 
UNIT_MOD_ENERGY 
UNIT_MOD_HAPPINESS 
UNIT_MOD_RUNE 
UNIT_MOD_RUNIC_POWER 
UNIT_MOD_ARMOR 
UNIT_MOD_RESISTANCE_HOLY 
UNIT_MOD_RESISTANCE_FIRE 
UNIT_MOD_RESISTANCE_NATURE 
UNIT_MOD_RESISTANCE_FROST 
UNIT_MOD_RESISTANCE_SHADOW 
UNIT_MOD_RESISTANCE_ARCANE 
UNIT_MOD_ATTACK_POWER 
UNIT_MOD_ATTACK_POWER_RANGED 
UNIT_MOD_DAMAGE_MAINHAND 
UNIT_MOD_DAMAGE_OFFHAND 
UNIT_MOD_DAMAGE_RANGED 
UNIT_MOD_END 
UNIT_MOD_STAT_START 
UNIT_MOD_STAT_END 
UNIT_MOD_RESISTANCE_START 
UNIT_MOD_RESISTANCE_END 
UNIT_MOD_POWER_START 
UNIT_MOD_POWER_END 

Definition at line 156 of file Unit.h.

◆ UnitState

enum UnitState : uint32
Enumerator
UNIT_STATE_DIED 
UNIT_STATE_MELEE_ATTACKING 
UNIT_STATE_CHARMED 
UNIT_STATE_STUNNED 
UNIT_STATE_ROAMING 
UNIT_STATE_CHASE 
UNIT_STATE_FOCUSING 
UNIT_STATE_FLEEING 
UNIT_STATE_IN_FLIGHT 
UNIT_STATE_FOLLOW 
UNIT_STATE_ROOT 
UNIT_STATE_CONFUSED 
UNIT_STATE_DISTRACTED 
UNIT_STATE_ISOLATED 
UNIT_STATE_ATTACK_PLAYER 
UNIT_STATE_CASTING 
UNIT_STATE_POSSESSED 
UNIT_STATE_CHARGING 
UNIT_STATE_JUMPING 
UNIT_STATE_FOLLOW_FORMATION 
UNIT_STATE_MOVE 
UNIT_STATE_ROTATING 
UNIT_STATE_EVADE 
UNIT_STATE_ROAMING_MOVE 
UNIT_STATE_CONFUSED_MOVE 
UNIT_STATE_FLEEING_MOVE 
UNIT_STATE_CHASE_MOVE 
UNIT_STATE_FOLLOW_MOVE 
UNIT_STATE_IGNORE_PATHFINDING 
UNIT_STATE_FOLLOW_FORMATION_MOVE 
UNIT_STATE_ALL_STATE_SUPPORTED 
UNIT_STATE_UNATTACKABLE 
UNIT_STATE_MOVING 
UNIT_STATE_CONTROLLED 
UNIT_STATE_LOST_CONTROL 
UNIT_STATE_CANNOT_AUTOATTACK 
UNIT_STATE_SIGHTLESS 
UNIT_STATE_CANNOT_TURN 
UNIT_STATE_NOT_MOVE 
UNIT_STATE_ALL_ERASABLE 
UNIT_STATE_ALL_STATE 

Definition at line 218 of file Unit.h.

◆ UnitTypeMask

Enumerator
UNIT_MASK_NONE 
UNIT_MASK_SUMMON 
UNIT_MASK_MINION 
UNIT_MASK_GUARDIAN 
UNIT_MASK_TOTEM 
UNIT_MASK_PET 
UNIT_MASK_VEHICLE 
UNIT_MASK_PUPPET 
UNIT_MASK_HUNTER_PET 
UNIT_MASK_CONTROLABLE_GUARDIAN 
UNIT_MASK_ACCESSORY 

Definition at line 361 of file Unit.h.

◆ VictimState

Enumerator
VICTIMSTATE_INTACT 
VICTIMSTATE_HIT 
VICTIMSTATE_DODGE 
VICTIMSTATE_PARRY 
VICTIMSTATE_INTERRUPT 
VICTIMSTATE_BLOCKS 
VICTIMSTATE_EVADES 
VICTIMSTATE_IS_IMMUNE 
VICTIMSTATE_DEFLECTS 

Definition at line 45 of file Unit.h.

◆ WeaponDamageRange

Enumerator
MINDAMAGE 
MAXDAMAGE 

Definition at line 150 of file Unit.h.

Function Documentation

◆ createProcHitMask()

uint32 createProcHitMask ( SpellNonMeleeDamage damageInfo,
SpellMissInfo  missCondition 
)

Definition at line 10001 of file Unit.cpp.

+ Here is the caller graph for this function:

Variable Documentation

◆ baseMoveSpeed

TC_GAME_API float baseMoveSpeed[MAX_MOVE_TYPE]
extern

Definition at line 87 of file Unit.cpp.

◆ playerBaseMoveSpeed

TC_GAME_API float playerBaseMoveSpeed[MAX_MOVE_TYPE]
extern

Definition at line 100 of file Unit.cpp.