TrinityCore
Loading...
Searching...
No Matches
RaceMask.h File Reference
#include "Define.h"
#include <array>
#include <type_traits>
+ Include dependency graph for RaceMask.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Trinity::RaceMask< T >
 
struct  Trinity::RaceMask< std::array< T, N > >
 

Namespaces

namespace  Trinity
 

Enumerations

enum  Races {
  RACE_NONE = 0 , RACE_HUMAN = 1 , RACE_ORC = 2 , RACE_DWARF = 3 ,
  RACE_NIGHTELF = 4 , RACE_UNDEAD_PLAYER = 5 , RACE_TAUREN = 6 , RACE_GNOME = 7 ,
  RACE_TROLL = 8 , RACE_GOBLIN = 9 , RACE_BLOODELF = 10 , RACE_DRAENEI = 11 ,
  RACE_WORGEN = 22 , RACE_PANDAREN_NEUTRAL = 24 , RACE_PANDAREN_ALLIANCE = 25 , RACE_PANDAREN_HORDE = 26 ,
  RACE_NIGHTBORNE = 27 , RACE_HIGHMOUNTAIN_TAUREN = 28 , RACE_VOID_ELF = 29 , RACE_LIGHTFORGED_DRAENEI = 30 ,
  RACE_ZANDALARI_TROLL = 31 , RACE_KUL_TIRAN = 32 , RACE_DARK_IRON_DWARF = 34 , RACE_VULPERA = 35 ,
  RACE_MAGHAR_ORC = 36 , RACE_MECHAGNOME = 37 , RACE_DRACTHYR_ALLIANCE = 52 , RACE_DRACTHYR_HORDE = 70 ,
  RACE_EARTHEN_DWARF_HORDE = 84 , RACE_EARTHEN_DWARF_ALLIANCE = 85 , RACE_HARANIR_ALLIANCE = 86 , RACE_HARANIR_HORDE = 91
}
 

Variables

template<typename T >
constexpr Trinity::RaceMask< T > RACEMASK_ALL_v = ~Trinity::RaceMask<T>{}
 
template<typename T >
constexpr Trinity::RaceMask< T > RACEMASK_ALL_PLAYABLE_v
 
template<typename T >
constexpr Trinity::RaceMask< T > RACEMASK_NEUTRAL_v = Trinity::RaceMask<T>::GetMaskForRace(RACE_PANDAREN_NEUTRAL)
 
template<typename T >
constexpr Trinity::RaceMask< T > RACEMASK_ALLIANCE_v
 
template<typename T >
constexpr Trinity::RaceMask< T > RACEMASK_HORDE_v = RACEMASK_ALL_PLAYABLE_v<T> & ~(RACEMASK_NEUTRAL_v<T> | RACEMASK_ALLIANCE_v<T>)
 
constexpr Trinity::RaceMask< uint64RACEMASK_ALL = RACEMASK_ALL_v<uint64>
 
constexpr Trinity::RaceMask< uint64RACEMASK_ALL_PLAYABLE = RACEMASK_ALL_PLAYABLE_v<uint64>
 
constexpr Trinity::RaceMask< uint64RACEMASK_NEUTRAL = RACEMASK_NEUTRAL_v<uint64>
 
constexpr Trinity::RaceMask< uint64RACEMASK_ALLIANCE = RACEMASK_ALLIANCE_v<uint64>
 
constexpr Trinity::RaceMask< uint64RACEMASK_HORDE = RACEMASK_HORDE_v<uint64>
 

Enumeration Type Documentation

◆ Races

enum Races
Enumerator
RACE_NONE 
RACE_HUMAN 
RACE_ORC 
RACE_DWARF 
RACE_NIGHTELF 
RACE_UNDEAD_PLAYER 
RACE_TAUREN 
RACE_GNOME 
RACE_TROLL 
RACE_GOBLIN 
RACE_BLOODELF 
RACE_DRAENEI 
RACE_WORGEN 
RACE_PANDAREN_NEUTRAL 
RACE_PANDAREN_ALLIANCE 
RACE_PANDAREN_HORDE 
RACE_NIGHTBORNE 
RACE_HIGHMOUNTAIN_TAUREN 
RACE_VOID_ELF 
RACE_LIGHTFORGED_DRAENEI 
RACE_ZANDALARI_TROLL 
RACE_KUL_TIRAN 
RACE_DARK_IRON_DWARF 
RACE_VULPERA 
RACE_MAGHAR_ORC 
RACE_MECHAGNOME 
RACE_DRACTHYR_ALLIANCE 
RACE_DRACTHYR_HORDE 
RACE_EARTHEN_DWARF_HORDE 
RACE_EARTHEN_DWARF_ALLIANCE 
RACE_HARANIR_ALLIANCE 
RACE_HARANIR_HORDE 

Definition at line 26 of file RaceMask.h.

Variable Documentation

◆ RACEMASK_ALL

constexpr Trinity::RaceMask<uint64> RACEMASK_ALL = RACEMASK_ALL_v<uint64>
inlineconstexpr

Definition at line 288 of file RaceMask.h.

◆ RACEMASK_ALL_PLAYABLE

constexpr Trinity::RaceMask<uint64> RACEMASK_ALL_PLAYABLE = RACEMASK_ALL_PLAYABLE_v<uint64>
inlineconstexpr

Definition at line 289 of file RaceMask.h.

◆ RACEMASK_ALL_PLAYABLE_v

template<typename T >
constexpr Trinity::RaceMask<T> RACEMASK_ALL_PLAYABLE_v
inlineconstexpr

Definition at line 231 of file RaceMask.h.

◆ RACEMASK_ALL_v

template<typename T >
constexpr Trinity::RaceMask<T> RACEMASK_ALL_v = ~Trinity::RaceMask<T>{}
inlineconstexpr

Definition at line 228 of file RaceMask.h.

◆ RACEMASK_ALLIANCE

constexpr Trinity::RaceMask<uint64> RACEMASK_ALLIANCE = RACEMASK_ALLIANCE_v<uint64>
inlineconstexpr

Definition at line 291 of file RaceMask.h.

◆ RACEMASK_ALLIANCE_v

template<typename T >
constexpr Trinity::RaceMask<T> RACEMASK_ALLIANCE_v
inlineconstexpr
Initial value:
=
@ RACE_DARK_IRON_DWARF
Definition RaceMask.h:62
@ RACE_LIGHTFORGED_DRAENEI
Definition RaceMask.h:58
@ RACE_DRAENEI
Definition RaceMask.h:39
@ RACE_EARTHEN_DWARF_ALLIANCE
Definition RaceMask.h:79
@ RACE_VOID_ELF
Definition RaceMask.h:57
@ RACE_NIGHTELF
Definition RaceMask.h:32
@ RACE_DWARF
Definition RaceMask.h:31
@ RACE_GNOME
Definition RaceMask.h:35
@ RACE_KUL_TIRAN
Definition RaceMask.h:60
@ RACE_HUMAN
Definition RaceMask.h:29
@ RACE_DRACTHYR_ALLIANCE
Definition RaceMask.h:66
@ RACE_WORGEN
Definition RaceMask.h:50
@ RACE_PANDAREN_ALLIANCE
Definition RaceMask.h:53
@ RACE_MECHAGNOME
Definition RaceMask.h:65
@ RACE_HARANIR_ALLIANCE
Definition RaceMask.h:80
static constexpr RaceMask GetMaskForRace(uint32 raceId)
Definition RaceMask.h:153

Definition at line 268 of file RaceMask.h.

◆ RACEMASK_HORDE

constexpr Trinity::RaceMask<uint64> RACEMASK_HORDE = RACEMASK_HORDE_v<uint64>
inlineconstexpr

Definition at line 292 of file RaceMask.h.

◆ RACEMASK_HORDE_v

template<typename T >
constexpr Trinity::RaceMask<T> RACEMASK_HORDE_v = RACEMASK_ALL_PLAYABLE_v<T> & ~(RACEMASK_NEUTRAL_v<T> | RACEMASK_ALLIANCE_v<T>)
inlineconstexpr

Definition at line 286 of file RaceMask.h.

◆ RACEMASK_NEUTRAL

constexpr Trinity::RaceMask<uint64> RACEMASK_NEUTRAL = RACEMASK_NEUTRAL_v<uint64>
inlineconstexpr

Definition at line 290 of file RaceMask.h.

◆ RACEMASK_NEUTRAL_v

template<typename T >
constexpr Trinity::RaceMask<T> RACEMASK_NEUTRAL_v = Trinity::RaceMask<T>::GetMaskForRace(RACE_PANDAREN_NEUTRAL)
inlineconstexpr

Definition at line 265 of file RaceMask.h.