TrinityCore
enuminfo_RaceMask.cpp
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#include "RaceMask.h"
19#include "Define.h"
20#include "SmartEnum.h"
21#include <stdexcept>
22
24{
25
26/********************************************************\
27|* data for enum 'Races' in 'RaceMask.h' auto-generated *|
28\********************************************************/
29template <>
31{
32 switch (value)
33 {
34 case RACE_HUMAN: return { "RACE_HUMAN", "Human", "" };
35 case RACE_ORC: return { "RACE_ORC", "Orc", "" };
36 case RACE_DWARF: return { "RACE_DWARF", "Dwarf", "" };
37 case RACE_NIGHTELF: return { "RACE_NIGHTELF", "Night Elf", "" };
38 case RACE_UNDEAD_PLAYER: return { "RACE_UNDEAD_PLAYER", "Undead", "" };
39 case RACE_TAUREN: return { "RACE_TAUREN", "Tauren", "" };
40 case RACE_GNOME: return { "RACE_GNOME", "Gnome", "" };
41 case RACE_TROLL: return { "RACE_TROLL", "Troll", "" };
42 case RACE_GOBLIN: return { "RACE_GOBLIN", "Goblin", "" };
43 case RACE_BLOODELF: return { "RACE_BLOODELF", "Blood Elf", "" };
44 case RACE_DRAENEI: return { "RACE_DRAENEI", "Draenei", "" };
45 case RACE_WORGEN: return { "RACE_WORGEN", "Worgen", "" };
46 case RACE_PANDAREN_NEUTRAL: return { "RACE_PANDAREN_NEUTRAL", "Pandaren", "Pandaren (Neutral)" };
47 case RACE_PANDAREN_ALLIANCE: return { "RACE_PANDAREN_ALLIANCE", "Pandaren", "Pandaren (Alliance)" };
48 case RACE_PANDAREN_HORDE: return { "RACE_PANDAREN_HORDE", "Pandaren", "Pandaren (Horde)" };
49 case RACE_NIGHTBORNE: return { "RACE_NIGHTBORNE", "Nightborne", "" };
50 case RACE_HIGHMOUNTAIN_TAUREN: return { "RACE_HIGHMOUNTAIN_TAUREN", "Highmountain Tauren", "" };
51 case RACE_VOID_ELF: return { "RACE_VOID_ELF", "Void Elf", "" };
52 case RACE_LIGHTFORGED_DRAENEI: return { "RACE_LIGHTFORGED_DRAENEI", "Lightforged Draenei", "" };
53 case RACE_ZANDALARI_TROLL: return { "RACE_ZANDALARI_TROLL", "Zandalari Troll", "" };
54 case RACE_KUL_TIRAN: return { "RACE_KUL_TIRAN", "Kul Tiran", "" };
55 case RACE_DARK_IRON_DWARF: return { "RACE_DARK_IRON_DWARF", "Dark Iron Dwarf", "Dark Iron Dwarf (RaceMask bit 11)" };
56 case RACE_VULPERA: return { "RACE_VULPERA", "Vulpera", "Vulpera (RaceMask bit 12)" };
57 case RACE_MAGHAR_ORC: return { "RACE_MAGHAR_ORC", "Mag'har Orc", "Mag'har Orc (RaceMask bit 13)" };
58 case RACE_MECHAGNOME: return { "RACE_MECHAGNOME", "Mechagnome", "Mechagnome (RaceMask bit 14)" };
59 case RACE_DRACTHYR_ALLIANCE: return { "RACE_DRACTHYR_ALLIANCE", "Dracthyr", "Dracthyr (Alliance) (RaceMask bit 16)" };
60 case RACE_DRACTHYR_HORDE: return { "RACE_DRACTHYR_HORDE", "Dracthyr", "Dracthyr (Horde) (RaceMask bit 15)" };
61 default: throw std::out_of_range("value");
62 }
63}
64
65template <>
67
68template <>
70{
71 switch (index)
72 {
73 case 0: return RACE_HUMAN;
74 case 1: return RACE_ORC;
75 case 2: return RACE_DWARF;
76 case 3: return RACE_NIGHTELF;
77 case 4: return RACE_UNDEAD_PLAYER;
78 case 5: return RACE_TAUREN;
79 case 6: return RACE_GNOME;
80 case 7: return RACE_TROLL;
81 case 8: return RACE_GOBLIN;
82 case 9: return RACE_BLOODELF;
83 case 10: return RACE_DRAENEI;
84 case 11: return RACE_WORGEN;
85 case 12: return RACE_PANDAREN_NEUTRAL;
86 case 13: return RACE_PANDAREN_ALLIANCE;
87 case 14: return RACE_PANDAREN_HORDE;
88 case 15: return RACE_NIGHTBORNE;
89 case 16: return RACE_HIGHMOUNTAIN_TAUREN;
90 case 17: return RACE_VOID_ELF;
91 case 18: return RACE_LIGHTFORGED_DRAENEI;
92 case 19: return RACE_ZANDALARI_TROLL;
93 case 20: return RACE_KUL_TIRAN;
94 case 21: return RACE_DARK_IRON_DWARF;
95 case 22: return RACE_VULPERA;
96 case 23: return RACE_MAGHAR_ORC;
97 case 24: return RACE_MECHAGNOME;
98 case 25: return RACE_DRACTHYR_ALLIANCE;
99 case 26: return RACE_DRACTHYR_HORDE;
100 default: throw std::out_of_range("index");
101 }
102}
103
104template <>
106{
107 switch (value)
108 {
109 case RACE_HUMAN: return 0;
110 case RACE_ORC: return 1;
111 case RACE_DWARF: return 2;
112 case RACE_NIGHTELF: return 3;
113 case RACE_UNDEAD_PLAYER: return 4;
114 case RACE_TAUREN: return 5;
115 case RACE_GNOME: return 6;
116 case RACE_TROLL: return 7;
117 case RACE_GOBLIN: return 8;
118 case RACE_BLOODELF: return 9;
119 case RACE_DRAENEI: return 10;
120 case RACE_WORGEN: return 11;
121 case RACE_PANDAREN_NEUTRAL: return 12;
122 case RACE_PANDAREN_ALLIANCE: return 13;
123 case RACE_PANDAREN_HORDE: return 14;
124 case RACE_NIGHTBORNE: return 15;
125 case RACE_HIGHMOUNTAIN_TAUREN: return 16;
126 case RACE_VOID_ELF: return 17;
127 case RACE_LIGHTFORGED_DRAENEI: return 18;
128 case RACE_ZANDALARI_TROLL: return 19;
129 case RACE_KUL_TIRAN: return 20;
130 case RACE_DARK_IRON_DWARF: return 21;
131 case RACE_VULPERA: return 22;
132 case RACE_MAGHAR_ORC: return 23;
133 case RACE_MECHAGNOME: return 24;
134 case RACE_DRACTHYR_ALLIANCE: return 25;
135 case RACE_DRACTHYR_HORDE: return 26;
136 default: throw std::out_of_range("value");
137 }
138}
139}
#define TC_API_EXPORT
Definition: Define.h:92
Races
Definition: RaceMask.h:26
@ RACE_DARK_IRON_DWARF
Definition: RaceMask.h:61
@ RACE_TROLL
Definition: RaceMask.h:35
@ RACE_UNDEAD_PLAYER
Definition: RaceMask.h:32
@ RACE_PANDAREN_NEUTRAL
Definition: RaceMask.h:51
@ RACE_ORC
Definition: RaceMask.h:29
@ RACE_LIGHTFORGED_DRAENEI
Definition: RaceMask.h:57
@ RACE_DRAENEI
Definition: RaceMask.h:38
@ RACE_NIGHTBORNE
Definition: RaceMask.h:54
@ RACE_HIGHMOUNTAIN_TAUREN
Definition: RaceMask.h:55
@ RACE_DRACTHYR_HORDE
Definition: RaceMask.h:66
@ RACE_ZANDALARI_TROLL
Definition: RaceMask.h:58
@ RACE_VOID_ELF
Definition: RaceMask.h:56
@ RACE_NIGHTELF
Definition: RaceMask.h:31
@ RACE_BLOODELF
Definition: RaceMask.h:37
@ RACE_DWARF
Definition: RaceMask.h:30
@ RACE_GNOME
Definition: RaceMask.h:34
@ RACE_GOBLIN
Definition: RaceMask.h:36
@ RACE_KUL_TIRAN
Definition: RaceMask.h:59
@ RACE_HUMAN
Definition: RaceMask.h:28
@ RACE_DRACTHYR_ALLIANCE
Definition: RaceMask.h:65
@ RACE_WORGEN
Definition: RaceMask.h:49
@ RACE_PANDAREN_ALLIANCE
Definition: RaceMask.h:52
@ RACE_VULPERA
Definition: RaceMask.h:62
@ RACE_MECHAGNOME
Definition: RaceMask.h:64
@ RACE_MAGHAR_ORC
Definition: RaceMask.h:63
@ RACE_PANDAREN_HORDE
Definition: RaceMask.h:53
@ RACE_TAUREN
Definition: RaceMask.h:33
static size_t ToIndex(Enum index)
static EnumText ToString(Enum value)
static Enum FromIndex(size_t index)