aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPalabola <Palabola@users.noreply.github.com>2018-09-08 16:49:33 +0200
committerShauren <shauren.trinity@gmail.com>2018-09-16 16:57:47 +0200
commit1675212a2c3720252b4ace506f8389d4edbc5b8b (patch)
tree3c5d7b274048a9022048ab96b0530bcc797a3172
parent01680312eb4b4f2b04297433a24e359d985df813 (diff)
Core/Misc: Updated race enum
-rw-r--r--src/server/game/Handlers/CharacterHandler.cpp3
-rw-r--r--src/server/game/Miscellaneous/SharedDefines.h91
2 files changed, 52 insertions, 42 deletions
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp
index 210b2f0c915..51e97ed1b8d 100644
--- a/src/server/game/Handlers/CharacterHandler.cpp
+++ b/src/server/game/Handlers/CharacterHandler.cpp
@@ -1962,7 +1962,7 @@ void WorldSession::HandleCharRaceOrFactionChangeCallback(std::shared_ptr<WorldPa
trans->Append(stmt);
// Race specific languages
- if (factionChangeInfo->RaceID != RACE_ORC && factionChangeInfo->RaceID != RACE_HUMAN)
+ if (factionChangeInfo->RaceID != RACE_ORC && factionChangeInfo->RaceID != RACE_HUMAN && factionChangeInfo->RaceID != RACE_MAGHAR_ORC)
{
stmt = CharacterDatabase.GetPreparedStatement(CHAR_INS_CHAR_SKILL_LANGUAGE);
stmt->setUInt64(0, lowGuid);
@@ -1970,6 +1970,7 @@ void WorldSession::HandleCharRaceOrFactionChangeCallback(std::shared_ptr<WorldPa
switch (factionChangeInfo->RaceID)
{
case RACE_DWARF:
+ case RACE_DARK_IRON_DWARF:
stmt->setUInt16(1, 111);
break;
case RACE_DRAENEI:
diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h
index af3a0119300..c842126b31d 100644
--- a/src/server/game/Miscellaneous/SharedDefines.h
+++ b/src/server/game/Miscellaneous/SharedDefines.h
@@ -128,10 +128,10 @@ enum Gender
GENDER_NONE = 2
};
-// ChrRaces.dbc (6.0.2.18988)
+// ChrRaces.db2 (8.0.1.27075)
enum Races
{
- RACE_NONE = 0,
+ RACE_NONE = 0,
RACE_HUMAN = 1,
RACE_ORC = 2,
RACE_DWARF = 3,
@@ -154,54 +154,63 @@ enum Races
//RACE_NORTHREND_SKELETON = 20,
//RACE_ICE_TROLL = 21,
RACE_WORGEN = 22,
- //RACE_GILNEAN = 23
+ //RACE_GILNEAN = 23,
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_LIGHTFORGED_DRAENEI = 30,
+ //RACE_ZANDALARI_TROLL = 31,
+ //RACE_KUL_TIRAN = 32,
+ //RACE_THIN_HUMAN = 33,
+ RACE_DARK_IRON_DWARF = 34,
+ //RACE_VULPERA = 35,
+ RACE_MAGHAR_ORC = 36
};
// max+1 for player race
-#define MAX_RACES 31
-
-#define RACEMASK_ALL_PLAYABLE \
- ((1<<(RACE_HUMAN-1)) | \
- (1<<(RACE_ORC-1)) | \
- (1<<(RACE_DWARF-1)) | \
- (1<<(RACE_NIGHTELF-1)) | \
- (1<<(RACE_UNDEAD_PLAYER-1)) | \
- (1<<(RACE_TAUREN-1)) | \
- (1<<(RACE_GNOME-1)) | \
- (1<<(RACE_TROLL-1)) | \
- (1<<(RACE_BLOODELF-1)) | \
- (1<<(RACE_DRAENEI-1)) | \
- (1<<(RACE_GOBLIN-1)) | \
- (1<<(RACE_WORGEN-1)) | \
- (1<<(RACE_PANDAREN_NEUTRAL-1)) |\
- (1<<(RACE_PANDAREN_ALLIANCE-1)) |\
- (1<<(RACE_PANDAREN_HORDE-1))|\
- (1<<(RACE_NIGHTBORNE-1))|\
- (1<<(RACE_HIGHMOUNTAIN_TAUREN-1))|\
- (1<<(RACE_VOID_ELF-1))|\
- (1<<(RACE_LIGHTFORGED_DRAENEI-1)))
-
-#define RACEMASK_NEUTRAL (1<<(RACE_PANDAREN_NEUTRAL-1))
-
-#define RACEMASK_ALLIANCE \
- ((1<<(RACE_HUMAN-1)) | \
- (1<<(RACE_DWARF-1)) | \
- (1<<(RACE_NIGHTELF-1)) | \
- (1<<(RACE_GNOME-1)) | \
- (1<<(RACE_DRAENEI-1)) | \
- (1<<(RACE_WORGEN-1)) | \
- (1<<(RACE_PANDAREN_ALLIANCE-1)) |\
- (1<<(RACE_VOID_ELF-1)) |\
- (1<<(RACE_LIGHTFORGED_DRAENEI-1)))
-
-#define RACEMASK_HORDE RACEMASK_ALL_PLAYABLE & ~RACEMASK_ALLIANCE
+#define MAX_RACES 37
+
+#define RACEMASK_ALL_PLAYABLE \
+ ((UI64LIT(1)<<(RACE_HUMAN-1)) | \
+ (UI64LIT(1)<<(RACE_ORC-1)) | \
+ (UI64LIT(1)<<(RACE_DWARF-1)) | \
+ (UI64LIT(1)<<(RACE_NIGHTELF-1)) | \
+ (UI64LIT(1)<<(RACE_UNDEAD_PLAYER-1)) | \
+ (UI64LIT(1)<<(RACE_TAUREN-1)) | \
+ (UI64LIT(1)<<(RACE_GNOME-1)) | \
+ (UI64LIT(1)<<(RACE_TROLL-1)) | \
+ (UI64LIT(1)<<(RACE_BLOODELF-1)) | \
+ (UI64LIT(1)<<(RACE_DRAENEI-1)) | \
+ (UI64LIT(1)<<(RACE_GOBLIN-1)) | \
+ (UI64LIT(1)<<(RACE_WORGEN-1)) | \
+ (UI64LIT(1)<<(RACE_PANDAREN_NEUTRAL-1)) | \
+ (UI64LIT(1)<<(RACE_PANDAREN_ALLIANCE-1)) | \
+ (UI64LIT(1)<<(RACE_PANDAREN_HORDE-1)) | \
+ (UI64LIT(1)<<(RACE_NIGHTBORNE-1)) | \
+ (UI64LIT(1)<<(RACE_HIGHMOUNTAIN_TAUREN-1)) | \
+ (UI64LIT(1)<<(RACE_VOID_ELF-1)) | \
+ (UI64LIT(1)<<(RACE_LIGHTFORGED_DRAENEI-1)) | \
+ (UI64LIT(1)<<(RACE_DARK_IRON_DWARF-1)) | \
+ (UI64LIT(1)<<(RACE_MAGHAR_ORC-1)))
+
+#define RACEMASK_NEUTRAL (UI64LIT(1)<<(RACE_PANDAREN_NEUTRAL-1))
+
+#define RACEMASK_ALLIANCE \
+ ((UI64LIT(1)<<(RACE_HUMAN-1)) | \
+ (UI64LIT(1)<<(RACE_DWARF-1)) | \
+ (UI64LIT(1)<<(RACE_NIGHTELF-1)) | \
+ (UI64LIT(1)<<(RACE_GNOME-1)) | \
+ (UI64LIT(1)<<(RACE_DRAENEI-1)) | \
+ (UI64LIT(1)<<(RACE_WORGEN-1)) | \
+ (UI64LIT(1)<<(RACE_PANDAREN_ALLIANCE-1)) | \
+ (UI64LIT(1)<<(RACE_VOID_ELF-1)) | \
+ (UI64LIT(1)<<(RACE_LIGHTFORGED_DRAENEI-1)) | \
+ (UI64LIT(1)<<(RACE_DARK_IRON_DWARF-1)))
+
+#define RACEMASK_HORDE (RACEMASK_ALL_PLAYABLE & ~RACEMASK_ALLIANCE)
// Class value is index in ChrClasses.dbc
enum Classes : uint8