mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 12:41:30 +00:00
869 lines
42 KiB
C++
869 lines
42 KiB
C++
/* EQEMu: Everquest Server Emulator
|
|
Copyright (C) 2001-2016 EQEMu Development Team (http://eqemu.org)
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; version 2 of the License.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY except by those people which sell it, which
|
|
are required to give you total support for your newly bought product;
|
|
without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
*/
|
|
|
|
#ifndef RACES_H
|
|
#define RACES_H
|
|
#include "../common/types.h"
|
|
#include <string>
|
|
|
|
const char* GetRaceIDName(uint16 race_id);
|
|
const char* GetGenderName(uint32 gender_id);
|
|
|
|
bool IsPlayerRace(uint16 race_id);
|
|
const std::string GetPlayerRaceAbbreviation(uint16 race_id);
|
|
|
|
uint32 GetPlayerRaceValue(uint16 race_id);
|
|
uint16 GetPlayerRaceBit(uint16 race_id);
|
|
|
|
uint16 GetRaceIDFromPlayerRaceValue(uint32 player_race_value);
|
|
|
|
float GetRaceGenderDefaultHeight(int race, int gender);
|
|
|
|
namespace Gender {
|
|
constexpr uint8 Male = 0;
|
|
constexpr uint8 Female = 1;
|
|
constexpr uint8 Neuter = 2;
|
|
}
|
|
|
|
namespace Race {
|
|
constexpr uint16 Doug = 0;
|
|
constexpr uint16 Human = 1;
|
|
constexpr uint16 Barbarian = 2;
|
|
constexpr uint16 Erudite = 3;
|
|
constexpr uint16 WoodElf = 4;
|
|
constexpr uint16 HighElf = 5;
|
|
constexpr uint16 DarkElf = 6;
|
|
constexpr uint16 HalfElf = 7;
|
|
constexpr uint16 Dwarf = 8;
|
|
constexpr uint16 Troll = 9;
|
|
constexpr uint16 Ogre = 10;
|
|
constexpr uint16 Halfling = 11;
|
|
constexpr uint16 Gnome = 12;
|
|
constexpr uint16 Aviak = 13;
|
|
constexpr uint16 Werewolf = 14;
|
|
constexpr uint16 Brownie = 15;
|
|
constexpr uint16 Centaur = 16;
|
|
constexpr uint16 Golem = 17;
|
|
constexpr uint16 Giant = 18;
|
|
constexpr uint16 Trakanon = 19;
|
|
constexpr uint16 VenrilSathir = 20;
|
|
constexpr uint16 EvilEye = 21;
|
|
constexpr uint16 Beetle = 22;
|
|
constexpr uint16 Kerran = 23;
|
|
constexpr uint16 Fish = 24;
|
|
constexpr uint16 Fairy = 25;
|
|
constexpr uint16 Froglok = 26;
|
|
constexpr uint16 FroglokGhoul = 27;
|
|
constexpr uint16 Fungusman = 28;
|
|
constexpr uint16 Gargoyle = 29;
|
|
constexpr uint16 Gasbag = 30;
|
|
constexpr uint16 GelatinousCube = 31;
|
|
constexpr uint16 Ghost = 32;
|
|
constexpr uint16 Ghoul = 33;
|
|
constexpr uint16 GiantBat = 34;
|
|
constexpr uint16 GiantEel = 35;
|
|
constexpr uint16 GiantRat = 36;
|
|
constexpr uint16 GiantSnake = 37;
|
|
constexpr uint16 GiantSpider = 38;
|
|
constexpr uint16 Gnoll = 39;
|
|
constexpr uint16 Goblin = 40;
|
|
constexpr uint16 Gorilla = 41;
|
|
constexpr uint16 Wolf = 42;
|
|
constexpr uint16 Bear = 43;
|
|
constexpr uint16 FreeportGuard = 44;
|
|
constexpr uint16 DemiLich = 45;
|
|
constexpr uint16 Imp = 46;
|
|
constexpr uint16 Griffin = 47;
|
|
constexpr uint16 Kobold = 48;
|
|
constexpr uint16 LavaDragon = 49;
|
|
constexpr uint16 Lion = 50;
|
|
constexpr uint16 LizardMan = 51;
|
|
constexpr uint16 Mimic = 52;
|
|
constexpr uint16 Minotaur = 53;
|
|
constexpr uint16 Orc = 54;
|
|
constexpr uint16 HumanBeggar = 55;
|
|
constexpr uint16 Pixie = 56;
|
|
constexpr uint16 Drachnid = 57;
|
|
constexpr uint16 SolusekRo = 58;
|
|
constexpr uint16 Bloodgill = 59;
|
|
constexpr uint16 Skeleton = 60;
|
|
constexpr uint16 Shark = 61;
|
|
constexpr uint16 Tunare = 62;
|
|
constexpr uint16 Tiger = 63;
|
|
constexpr uint16 Treant = 64;
|
|
constexpr uint16 Vampire = 65;
|
|
constexpr uint16 StatueOfRallosZek = 66;
|
|
constexpr uint16 HighpassCitizen = 67;
|
|
constexpr uint16 TentacleTerror = 68;
|
|
constexpr uint16 Wisp = 69;
|
|
constexpr uint16 Zombie = 70;
|
|
constexpr uint16 QeynosCitizen = 71;
|
|
constexpr uint16 Ship = 72;
|
|
constexpr uint16 Launch = 73;
|
|
constexpr uint16 Piranha = 74;
|
|
constexpr uint16 Elemental = 75;
|
|
constexpr uint16 Puma = 76;
|
|
constexpr uint16 NeriakCitizen = 77;
|
|
constexpr uint16 EruditeCitizen = 78;
|
|
constexpr uint16 Bixie = 79;
|
|
constexpr uint16 ReanimatedHand = 80;
|
|
constexpr uint16 RivervaleCitizen = 81;
|
|
constexpr uint16 Scarecrow = 82;
|
|
constexpr uint16 Skunk = 83;
|
|
constexpr uint16 SnakeElemental = 84;
|
|
constexpr uint16 Spectre = 85;
|
|
constexpr uint16 Sphinx = 86;
|
|
constexpr uint16 Armadillo = 87;
|
|
constexpr uint16 ClockworkGnome = 88;
|
|
constexpr uint16 Drake = 89;
|
|
constexpr uint16 HalasCitizen = 90;
|
|
constexpr uint16 Alligator = 91;
|
|
constexpr uint16 GrobbCitizen = 92;
|
|
constexpr uint16 OggokCitizen = 93;
|
|
constexpr uint16 KaladimCitizen = 94;
|
|
constexpr uint16 CazicThule = 95;
|
|
constexpr uint16 Cockatrice = 96;
|
|
constexpr uint16 DaisyMan = 97;
|
|
constexpr uint16 ElfVampire = 98;
|
|
constexpr uint16 Denizen = 99;
|
|
constexpr uint16 Dervish = 100;
|
|
constexpr uint16 Efreeti = 101;
|
|
constexpr uint16 FroglokTadpole = 102;
|
|
constexpr uint16 PhinigelAutropos = 103;
|
|
constexpr uint16 Leech = 104;
|
|
constexpr uint16 Swordfish = 105;
|
|
constexpr uint16 Felguard = 106;
|
|
constexpr uint16 Mammoth = 107;
|
|
constexpr uint16 EyeOfZomm = 108;
|
|
constexpr uint16 Wasp = 109;
|
|
constexpr uint16 Mermaid = 110;
|
|
constexpr uint16 Harpy = 111;
|
|
constexpr uint16 Fayguard = 112;
|
|
constexpr uint16 Drixie = 113;
|
|
constexpr uint16 GhostShip = 114;
|
|
constexpr uint16 Clam = 115;
|
|
constexpr uint16 SeaHorse = 116;
|
|
constexpr uint16 DwarfGhost = 117;
|
|
constexpr uint16 EruditeGhost = 118;
|
|
constexpr uint16 Sabertooth = 119;
|
|
constexpr uint16 WolfElemental = 120;
|
|
constexpr uint16 Gorgon = 121;
|
|
constexpr uint16 DragonSkeleton = 122;
|
|
constexpr uint16 Innoruuk = 123;
|
|
constexpr uint16 Unicorn = 124;
|
|
constexpr uint16 Pegasus = 125;
|
|
constexpr uint16 Djinn = 126;
|
|
constexpr uint16 InvisibleMan = 127;
|
|
constexpr uint16 Iksar = 128;
|
|
constexpr uint16 Scorpion = 129;
|
|
constexpr uint16 VahShir = 130;
|
|
constexpr uint16 Sarnak = 131;
|
|
constexpr uint16 Draglock = 132;
|
|
constexpr uint16 Drolvarg = 133;
|
|
constexpr uint16 Mosquito = 134;
|
|
constexpr uint16 Rhinoceros = 135;
|
|
constexpr uint16 Xalgoz = 136;
|
|
constexpr uint16 KunarkGoblin = 137;
|
|
constexpr uint16 Yeti = 138;
|
|
constexpr uint16 IksarCitizen = 139;
|
|
constexpr uint16 ForestGiant = 140;
|
|
constexpr uint16 Boat = 141;
|
|
constexpr uint16 MinorIllusion = 142;
|
|
constexpr uint16 Tree = 143;
|
|
constexpr uint16 Burynai = 144;
|
|
constexpr uint16 Goo = 145;
|
|
constexpr uint16 SarnakSpirit = 146;
|
|
constexpr uint16 IksarSpirit = 147;
|
|
constexpr uint16 KunarkFish = 148;
|
|
constexpr uint16 IksarScorpion = 149;
|
|
constexpr uint16 Erollisi = 150;
|
|
constexpr uint16 Tribunal = 151;
|
|
constexpr uint16 Bertoxxulous = 152;
|
|
constexpr uint16 Bristlebane = 153;
|
|
constexpr uint16 FayDrake = 154;
|
|
constexpr uint16 UndeadSarnak = 155;
|
|
constexpr uint16 Ratman = 156;
|
|
constexpr uint16 Wyvern = 157;
|
|
constexpr uint16 Wurm = 158;
|
|
constexpr uint16 Devourer = 159;
|
|
constexpr uint16 IksarGolem = 160;
|
|
constexpr uint16 UndeadIksar = 161;
|
|
constexpr uint16 ManEatingPlant = 162;
|
|
constexpr uint16 Raptor = 163;
|
|
constexpr uint16 SarnakGolem = 164;
|
|
constexpr uint16 WaterDragon = 165;
|
|
constexpr uint16 AnimatedHand = 166;
|
|
constexpr uint16 Succulent = 167;
|
|
constexpr uint16 Holgresh = 168;
|
|
constexpr uint16 Brontotherium = 169;
|
|
constexpr uint16 SnowDervish = 170;
|
|
constexpr uint16 DireWolf = 171;
|
|
constexpr uint16 Manticore = 172;
|
|
constexpr uint16 Totem = 173;
|
|
constexpr uint16 IceSpectre = 174;
|
|
constexpr uint16 EnchantedArmor = 175;
|
|
constexpr uint16 SnowRabbit = 176;
|
|
constexpr uint16 Walrus = 177;
|
|
constexpr uint16 Geonid = 178;
|
|
constexpr uint16 Unknown = 179;
|
|
constexpr uint16 Unknown2 = 180;
|
|
constexpr uint16 Yakkar = 181;
|
|
constexpr uint16 Faun = 182;
|
|
constexpr uint16 Coldain = 183;
|
|
constexpr uint16 VeliousDragon = 184;
|
|
constexpr uint16 Hag = 185;
|
|
constexpr uint16 Hippogriff = 186;
|
|
constexpr uint16 Siren = 187;
|
|
constexpr uint16 FrostGiant = 188;
|
|
constexpr uint16 StormGiant = 189;
|
|
constexpr uint16 Othmir = 190;
|
|
constexpr uint16 Ulthork = 191;
|
|
constexpr uint16 ClockworkDragon = 192;
|
|
constexpr uint16 Abhorrent = 193;
|
|
constexpr uint16 SeaTurtle = 194;
|
|
constexpr uint16 BlackAndWhiteDragon = 195;
|
|
constexpr uint16 GhostDragon = 196;
|
|
constexpr uint16 RonnieTest = 197;
|
|
constexpr uint16 PrismaticDragon = 198;
|
|
constexpr uint16 Shiknar = 199;
|
|
constexpr uint16 Rockhopper = 200;
|
|
constexpr uint16 Underbulk = 201;
|
|
constexpr uint16 Grimling = 202;
|
|
constexpr uint16 Worm = 203;
|
|
constexpr uint16 EvanTest = 204;
|
|
constexpr uint16 KhatiSha = 205;
|
|
constexpr uint16 Owlbear = 206;
|
|
constexpr uint16 RhinoBeetle = 207;
|
|
constexpr uint16 Vampire2 = 208;
|
|
constexpr uint16 EarthElemental = 209;
|
|
constexpr uint16 AirElemental = 210;
|
|
constexpr uint16 WaterElemental = 211;
|
|
constexpr uint16 FireElemental = 212;
|
|
constexpr uint16 WetfangMinnow = 213;
|
|
constexpr uint16 ThoughtHorror = 214;
|
|
constexpr uint16 Tegi = 215;
|
|
constexpr uint16 Horse = 216;
|
|
constexpr uint16 Shissar = 217;
|
|
constexpr uint16 FungalFiend = 218;
|
|
constexpr uint16 VampireVolatalis = 219;
|
|
constexpr uint16 Stonegrabber = 220;
|
|
constexpr uint16 ScarletCheetah = 221;
|
|
constexpr uint16 Zelniak = 222;
|
|
constexpr uint16 Lightcrawler = 223;
|
|
constexpr uint16 Shade = 224;
|
|
constexpr uint16 Sunflower = 225;
|
|
constexpr uint16 Shadel = 226;
|
|
constexpr uint16 Shrieker = 227;
|
|
constexpr uint16 Galorian = 228;
|
|
constexpr uint16 Netherbian = 229;
|
|
constexpr uint16 Akhevan = 230;
|
|
constexpr uint16 GriegVeneficus = 231;
|
|
constexpr uint16 SonicWolf = 232;
|
|
constexpr uint16 GroundShaker = 233;
|
|
constexpr uint16 VahShirSkeleton = 234;
|
|
constexpr uint16 Wretch = 235;
|
|
constexpr uint16 LordInquisitorSeru = 236;
|
|
constexpr uint16 Recuso = 237;
|
|
constexpr uint16 VahShirKing = 238;
|
|
constexpr uint16 VahShirGuard = 239;
|
|
constexpr uint16 TeleportMan = 240;
|
|
constexpr uint16 Werewolf2 = 241;
|
|
constexpr uint16 Nymph = 242;
|
|
constexpr uint16 Dryad = 243;
|
|
constexpr uint16 Treant2 = 244;
|
|
constexpr uint16 Fly = 245;
|
|
constexpr uint16 TarewMarr = 246;
|
|
constexpr uint16 SolusekRo2 = 247;
|
|
constexpr uint16 ClockworkGolem = 248;
|
|
constexpr uint16 ClockworkBrain = 249;
|
|
constexpr uint16 Banshee = 250;
|
|
constexpr uint16 GuardOfJustice = 251;
|
|
constexpr uint16 MiniPom = 252;
|
|
constexpr uint16 DiseasedFiend = 253;
|
|
constexpr uint16 SolusekRoGuard = 254;
|
|
constexpr uint16 BertoxxulousNew = 255;
|
|
constexpr uint16 TribunalNew = 256;
|
|
constexpr uint16 TerrisThule = 257;
|
|
constexpr uint16 Vegerog = 258;
|
|
constexpr uint16 Crocodile = 259;
|
|
constexpr uint16 Bat = 260;
|
|
constexpr uint16 Hraquis = 261;
|
|
constexpr uint16 Tranquilion = 262;
|
|
constexpr uint16 TinSoldier = 263;
|
|
constexpr uint16 NightmareWraith = 264;
|
|
constexpr uint16 Malarian = 265;
|
|
constexpr uint16 KnightOfPestilence = 266;
|
|
constexpr uint16 Lepertoloth = 267;
|
|
constexpr uint16 Bubonian = 268;
|
|
constexpr uint16 BubonianUnderling = 269;
|
|
constexpr uint16 Pusling = 270;
|
|
constexpr uint16 WaterMephit = 271;
|
|
constexpr uint16 Stormrider = 272;
|
|
constexpr uint16 JunkBeast = 273;
|
|
constexpr uint16 BrokenClockwork = 274;
|
|
constexpr uint16 GiantClockwork = 275;
|
|
constexpr uint16 ClockworkBeetle = 276;
|
|
constexpr uint16 NightmareGoblin = 277;
|
|
constexpr uint16 Karana = 278;
|
|
constexpr uint16 BloodRaven = 279;
|
|
constexpr uint16 NightmareGargoyle = 280;
|
|
constexpr uint16 MouthOfInsanity = 281;
|
|
constexpr uint16 SkeletalHorse = 282;
|
|
constexpr uint16 Saryrn = 283;
|
|
constexpr uint16 FenninRo = 284;
|
|
constexpr uint16 Tormentor = 285;
|
|
constexpr uint16 SoulDevourer = 286;
|
|
constexpr uint16 Nightmare = 287;
|
|
constexpr uint16 NewRallosZek = 288;
|
|
constexpr uint16 VallonZek = 289;
|
|
constexpr uint16 TallonZek = 290;
|
|
constexpr uint16 AirMephit = 291;
|
|
constexpr uint16 EarthMephit = 292;
|
|
constexpr uint16 FireMephit = 293;
|
|
constexpr uint16 NightmareMephit = 294;
|
|
constexpr uint16 Zebuxoruk = 295;
|
|
constexpr uint16 MithanielMarr = 296;
|
|
constexpr uint16 UndeadKnight = 297;
|
|
constexpr uint16 Rathe = 298;
|
|
constexpr uint16 Xegony = 299;
|
|
constexpr uint16 Fiend = 300;
|
|
constexpr uint16 TestObject = 301;
|
|
constexpr uint16 Crab = 302;
|
|
constexpr uint16 Phoenix = 303;
|
|
constexpr uint16 Quarm = 304;
|
|
constexpr uint16 Bear2 = 305;
|
|
constexpr uint16 EarthGolem = 306;
|
|
constexpr uint16 IronGolem = 307;
|
|
constexpr uint16 StormGolem = 308;
|
|
constexpr uint16 AirGolem = 309;
|
|
constexpr uint16 WoodGolem = 310;
|
|
constexpr uint16 FireGolem = 311;
|
|
constexpr uint16 WaterGolem = 312;
|
|
constexpr uint16 WarWraith = 313;
|
|
constexpr uint16 Wrulon = 314;
|
|
constexpr uint16 Kraken = 315;
|
|
constexpr uint16 PoisonFrog = 316;
|
|
constexpr uint16 Nilborien = 317;
|
|
constexpr uint16 Valorian = 318;
|
|
constexpr uint16 WarBoar = 319;
|
|
constexpr uint16 Efreeti2 = 320;
|
|
constexpr uint16 WarBoar2 = 321;
|
|
constexpr uint16 Valorian2 = 322;
|
|
constexpr uint16 AnimatedArmor = 323;
|
|
constexpr uint16 UndeadFootman = 324;
|
|
constexpr uint16 RallosOgre = 325;
|
|
constexpr uint16 Arachnid = 326;
|
|
constexpr uint16 CrystalSpider = 327;
|
|
constexpr uint16 ZebuxoruksCage = 328;
|
|
constexpr uint16 Portal = 329;
|
|
constexpr uint16 Froglok2 = 330;
|
|
constexpr uint16 TrollCrewMember = 331;
|
|
constexpr uint16 PirateDeckhand = 332;
|
|
constexpr uint16 BrokenSkullPirate = 333;
|
|
constexpr uint16 PirateGhost = 334;
|
|
constexpr uint16 OneArmedPirate = 335;
|
|
constexpr uint16 SpiritmasterNadox = 336;
|
|
constexpr uint16 BrokenSkullTaskmaster = 337;
|
|
constexpr uint16 GnomePirate = 338;
|
|
constexpr uint16 DarkElfPirate = 339;
|
|
constexpr uint16 OgrePirate = 340;
|
|
constexpr uint16 HumanPirate = 341;
|
|
constexpr uint16 EruditePirate = 342;
|
|
constexpr uint16 Frog = 343;
|
|
constexpr uint16 TrollZombie = 344;
|
|
constexpr uint16 Luggald = 345;
|
|
constexpr uint16 Luggald2 = 346;
|
|
constexpr uint16 Luggald3 = 347;
|
|
constexpr uint16 Drogmor = 348;
|
|
constexpr uint16 FroglokSkeleton = 349;
|
|
constexpr uint16 UndeadFroglok = 350;
|
|
constexpr uint16 KnightOfHate = 351;
|
|
constexpr uint16 ArcanistOfHate = 352;
|
|
constexpr uint16 Veksar = 353;
|
|
constexpr uint16 Veksar2 = 354;
|
|
constexpr uint16 Veksar3 = 355;
|
|
constexpr uint16 Chokidai = 356;
|
|
constexpr uint16 UndeadChokidai = 357;
|
|
constexpr uint16 UndeadVeksar = 358;
|
|
constexpr uint16 UndeadVampire = 359;
|
|
constexpr uint16 Vampire3 = 360;
|
|
constexpr uint16 RujarkianOrc = 361;
|
|
constexpr uint16 BoneGolem = 362;
|
|
constexpr uint16 Synarcana = 363;
|
|
constexpr uint16 SandElf = 364;
|
|
constexpr uint16 MasterVampire = 365;
|
|
constexpr uint16 MasterOrc = 366;
|
|
constexpr uint16 Skeleton2 = 367;
|
|
constexpr uint16 Mummy = 368;
|
|
constexpr uint16 NewGoblin = 369;
|
|
constexpr uint16 Insect = 370;
|
|
constexpr uint16 FroglokGhost = 371;
|
|
constexpr uint16 Dervish2 = 372;
|
|
constexpr uint16 Shade2 = 373;
|
|
constexpr uint16 Golem2 = 374;
|
|
constexpr uint16 EvilEye2 = 375;
|
|
constexpr uint16 Box = 376;
|
|
constexpr uint16 Barrel = 377;
|
|
constexpr uint16 Chest = 378;
|
|
constexpr uint16 Vase = 379;
|
|
constexpr uint16 Table = 380;
|
|
constexpr uint16 WeaponRack = 381;
|
|
constexpr uint16 Coffin = 382;
|
|
constexpr uint16 Bones = 383;
|
|
constexpr uint16 Jokester = 384;
|
|
constexpr uint16 Nihil = 385;
|
|
constexpr uint16 Trusik = 386;
|
|
constexpr uint16 StoneWorker = 387;
|
|
constexpr uint16 Hynid = 388;
|
|
constexpr uint16 Turepta = 389;
|
|
constexpr uint16 Cragbeast = 390;
|
|
constexpr uint16 Stonemite = 391;
|
|
constexpr uint16 Ukun = 392;
|
|
constexpr uint16 Ixt = 393;
|
|
constexpr uint16 Ikaav = 394;
|
|
constexpr uint16 Aneuk = 395;
|
|
constexpr uint16 Kyv = 396;
|
|
constexpr uint16 Noc = 397;
|
|
constexpr uint16 Ratuk = 398;
|
|
constexpr uint16 Taneth = 399;
|
|
constexpr uint16 Huvul = 400;
|
|
constexpr uint16 Mutna = 401;
|
|
constexpr uint16 Mastruq = 402;
|
|
constexpr uint16 Taelosian = 403;
|
|
constexpr uint16 DiscordShip = 404;
|
|
constexpr uint16 StoneWorker2 = 405;
|
|
constexpr uint16 MataMuram = 406;
|
|
constexpr uint16 LightingWarrior = 407;
|
|
constexpr uint16 Succubus = 408;
|
|
constexpr uint16 Bazu = 409;
|
|
constexpr uint16 Feran = 410;
|
|
constexpr uint16 Pyrilen = 411;
|
|
constexpr uint16 Chimera = 412;
|
|
constexpr uint16 Dragorn = 413;
|
|
constexpr uint16 Murkglider = 414;
|
|
constexpr uint16 Rat = 415;
|
|
constexpr uint16 Bat2 = 416;
|
|
constexpr uint16 Gelidran = 417;
|
|
constexpr uint16 Discordling = 418;
|
|
constexpr uint16 Girplan = 419;
|
|
constexpr uint16 Minotaur2 = 420;
|
|
constexpr uint16 DragornBox = 421;
|
|
constexpr uint16 RunedOrb = 422;
|
|
constexpr uint16 DragonBones = 423;
|
|
constexpr uint16 MuramiteArmorPile = 424;
|
|
constexpr uint16 CrystalShard = 425;
|
|
constexpr uint16 Portal2 = 426;
|
|
constexpr uint16 CoinPurse = 427;
|
|
constexpr uint16 RockPile = 428;
|
|
constexpr uint16 MurkgliderEggSack = 429;
|
|
constexpr uint16 Drake2 = 430;
|
|
constexpr uint16 Dervish3 = 431;
|
|
constexpr uint16 Drake3 = 432;
|
|
constexpr uint16 Goblin2 = 433;
|
|
constexpr uint16 Kirin = 434;
|
|
constexpr uint16 Dragon = 435;
|
|
constexpr uint16 Basilisk = 436;
|
|
constexpr uint16 Dragon2 = 437;
|
|
constexpr uint16 Dragon3 = 438;
|
|
constexpr uint16 Puma2 = 439;
|
|
constexpr uint16 Spider = 440;
|
|
constexpr uint16 SpiderQueen = 441;
|
|
constexpr uint16 AnimatedStatue = 442;
|
|
constexpr uint16 Unknown3 = 443;
|
|
constexpr uint16 Unknown4 = 444;
|
|
constexpr uint16 DragonEgg = 445;
|
|
constexpr uint16 DragonStatue = 446;
|
|
constexpr uint16 LavaRock = 447;
|
|
constexpr uint16 AnimatedStatue2 = 448;
|
|
constexpr uint16 SpiderEggSack = 449;
|
|
constexpr uint16 LavaSpider = 450;
|
|
constexpr uint16 LavaSpiderQueen = 451;
|
|
constexpr uint16 Dragon4 = 452;
|
|
constexpr uint16 Giant2 = 453;
|
|
constexpr uint16 Werewolf3 = 454;
|
|
constexpr uint16 Kobold2 = 455;
|
|
constexpr uint16 Sporali = 456;
|
|
constexpr uint16 Gnomework = 457;
|
|
constexpr uint16 Orc2 = 458;
|
|
constexpr uint16 Corathus = 459;
|
|
constexpr uint16 Coral = 460;
|
|
constexpr uint16 Drachnid2 = 461;
|
|
constexpr uint16 DrachnidCocoon = 462;
|
|
constexpr uint16 FungusPatch = 463;
|
|
constexpr uint16 Gargoyle2 = 464;
|
|
constexpr uint16 Witheran = 465;
|
|
constexpr uint16 DarkLord = 466;
|
|
constexpr uint16 Shiliskin = 467;
|
|
constexpr uint16 Snake = 468;
|
|
constexpr uint16 EvilEye3 = 469;
|
|
constexpr uint16 Minotaur3 = 470;
|
|
constexpr uint16 Zombie2 = 471;
|
|
constexpr uint16 ClockworkBoar = 472;
|
|
constexpr uint16 Fairy2 = 473;
|
|
constexpr uint16 Witheran2 = 474;
|
|
constexpr uint16 AirElemental2 = 475;
|
|
constexpr uint16 EarthElemental2 = 476;
|
|
constexpr uint16 FireElemental2 = 477;
|
|
constexpr uint16 WaterElemental2 = 478;
|
|
constexpr uint16 Alligator2 = 479;
|
|
constexpr uint16 Bear3 = 480;
|
|
constexpr uint16 ScaledWolf = 481;
|
|
constexpr uint16 Wolf2 = 482;
|
|
constexpr uint16 SpiritWolf = 483;
|
|
constexpr uint16 Skeleton3 = 484;
|
|
constexpr uint16 Spectre2 = 485;
|
|
constexpr uint16 Bolvirk = 486;
|
|
constexpr uint16 Banshee2 = 487;
|
|
constexpr uint16 Banshee3 = 488;
|
|
constexpr uint16 Elddar = 489;
|
|
constexpr uint16 ForestGiant2 = 490;
|
|
constexpr uint16 BoneGolem2 = 491;
|
|
constexpr uint16 Horse2 = 492;
|
|
constexpr uint16 Pegasus2 = 493;
|
|
constexpr uint16 ShamblingMound = 494;
|
|
constexpr uint16 Scrykin = 495;
|
|
constexpr uint16 Treant3 = 496;
|
|
constexpr uint16 Vampire4 = 497;
|
|
constexpr uint16 AyonaeRo = 498;
|
|
constexpr uint16 SullonZek = 499;
|
|
constexpr uint16 Banner = 500;
|
|
constexpr uint16 Flag = 501;
|
|
constexpr uint16 Rowboat = 502;
|
|
constexpr uint16 BearTrap = 503;
|
|
constexpr uint16 ClockworkBomb = 504;
|
|
constexpr uint16 DynamiteKeg = 505;
|
|
constexpr uint16 PressurePlate = 506;
|
|
constexpr uint16 PufferSpore = 507;
|
|
constexpr uint16 StoneRing = 508;
|
|
constexpr uint16 RootTentacle = 509;
|
|
constexpr uint16 RunicSymbol = 510;
|
|
constexpr uint16 SaltpetterBomb = 511;
|
|
constexpr uint16 FloatingSkull = 512;
|
|
constexpr uint16 SpikeTrap = 513;
|
|
constexpr uint16 Totem2 = 514;
|
|
constexpr uint16 Web = 515;
|
|
constexpr uint16 WickerBasket = 516;
|
|
constexpr uint16 Unicorn2 = 517;
|
|
constexpr uint16 Horse3 = 518;
|
|
constexpr uint16 Unicorn3 = 519;
|
|
constexpr uint16 Bixie2 = 520;
|
|
constexpr uint16 Centaur2 = 521;
|
|
constexpr uint16 Drakkin = 522;
|
|
constexpr uint16 Giant3 = 523;
|
|
constexpr uint16 Gnoll2 = 524;
|
|
constexpr uint16 Griffin2 = 525;
|
|
constexpr uint16 GiantShade = 526;
|
|
constexpr uint16 Harpy2 = 527;
|
|
constexpr uint16 Mammoth2 = 528;
|
|
constexpr uint16 Satyr = 529;
|
|
constexpr uint16 Dragon5 = 530;
|
|
constexpr uint16 Dragon6 = 531;
|
|
constexpr uint16 Dynleth = 532;
|
|
constexpr uint16 Boat2 = 533;
|
|
constexpr uint16 WeaponRack2 = 534;
|
|
constexpr uint16 ArmorRack = 535;
|
|
constexpr uint16 HoneyPot = 536;
|
|
constexpr uint16 JumJumBucket = 537;
|
|
constexpr uint16 Plant = 538;
|
|
constexpr uint16 StoneJug = 539;
|
|
constexpr uint16 Plant2 = 540;
|
|
constexpr uint16 Toolbox = 541;
|
|
constexpr uint16 WineCask = 542;
|
|
constexpr uint16 StoneJug2 = 543;
|
|
constexpr uint16 ElvenBoat = 544;
|
|
constexpr uint16 GnomishBoat = 545;
|
|
constexpr uint16 UndeadBoat = 546;
|
|
constexpr uint16 Goo2 = 547;
|
|
constexpr uint16 Goo3 = 548;
|
|
constexpr uint16 Goo4 = 549;
|
|
constexpr uint16 MerchantShip = 550;
|
|
constexpr uint16 PirateShip = 551;
|
|
constexpr uint16 GhostShip2 = 552;
|
|
constexpr uint16 Banner2 = 553;
|
|
constexpr uint16 Banner3 = 554;
|
|
constexpr uint16 Banner4 = 555;
|
|
constexpr uint16 Banner5 = 556;
|
|
constexpr uint16 Banner6 = 557;
|
|
constexpr uint16 Aviak2 = 558;
|
|
constexpr uint16 Beetle2 = 559;
|
|
constexpr uint16 Gorilla2 = 560;
|
|
constexpr uint16 Kedge = 561;
|
|
constexpr uint16 Kerran2 = 562;
|
|
constexpr uint16 Shissar2 = 563;
|
|
constexpr uint16 Siren2 = 564;
|
|
constexpr uint16 Sphinx2 = 565;
|
|
constexpr uint16 Human2 = 566;
|
|
constexpr uint16 Campfire = 567;
|
|
constexpr uint16 Brownie2 = 568;
|
|
constexpr uint16 Dragon7 = 569;
|
|
constexpr uint16 Exoskeleton = 570;
|
|
constexpr uint16 Ghoul2 = 571;
|
|
constexpr uint16 ClockworkGuardian = 572;
|
|
constexpr uint16 Unknown5 = 573;
|
|
constexpr uint16 Minotaur4 = 574;
|
|
constexpr uint16 Scarecrow2 = 575;
|
|
constexpr uint16 Shade3 = 576;
|
|
constexpr uint16 Rotocopter = 577;
|
|
constexpr uint16 TentacleTerror2 = 578;
|
|
constexpr uint16 Wereorc = 579;
|
|
constexpr uint16 Worg = 580;
|
|
constexpr uint16 Wyvern2 = 581;
|
|
constexpr uint16 Chimera2 = 582;
|
|
constexpr uint16 Kirin2 = 583;
|
|
constexpr uint16 Puma3 = 584;
|
|
constexpr uint16 Boulder = 585;
|
|
constexpr uint16 Banner7 = 586;
|
|
constexpr uint16 ElvenGhost = 587;
|
|
constexpr uint16 HumanGhost = 588;
|
|
constexpr uint16 Chest2 = 589;
|
|
constexpr uint16 Chest3 = 590;
|
|
constexpr uint16 Crystal = 591;
|
|
constexpr uint16 Coffin2 = 592;
|
|
constexpr uint16 GuardianCpu = 593;
|
|
constexpr uint16 Worg2 = 594;
|
|
constexpr uint16 Mansion = 595;
|
|
constexpr uint16 FloatingIsland = 596;
|
|
constexpr uint16 Cragslither = 597;
|
|
constexpr uint16 Wrulon2 = 598;
|
|
constexpr uint16 SpellParticle = 599;
|
|
constexpr uint16 InvisibleManOfZomm = 600;
|
|
constexpr uint16 RobocopterOfZomm = 601;
|
|
constexpr uint16 Burynai2 = 602;
|
|
constexpr uint16 Frog2 = 603;
|
|
constexpr uint16 Dracolich = 604;
|
|
constexpr uint16 IksarGhost = 605;
|
|
constexpr uint16 IksarSkeleton = 606;
|
|
constexpr uint16 Mephit = 607;
|
|
constexpr uint16 Muddite = 608;
|
|
constexpr uint16 Raptor2 = 609;
|
|
constexpr uint16 Sarnak2 = 610;
|
|
constexpr uint16 Scorpion2 = 611;
|
|
constexpr uint16 Tsetsian = 612;
|
|
constexpr uint16 Wurm2 = 613;
|
|
constexpr uint16 Nekhon = 614;
|
|
constexpr uint16 HydraCrystal = 615;
|
|
constexpr uint16 CrystalSphere = 616;
|
|
constexpr uint16 Gnoll3 = 617;
|
|
constexpr uint16 Sokokar = 618;
|
|
constexpr uint16 StonePylon = 619;
|
|
constexpr uint16 DemonVulture = 620;
|
|
constexpr uint16 Wagon = 621;
|
|
constexpr uint16 GodOfDiscord = 622;
|
|
constexpr uint16 FeranMount = 623;
|
|
constexpr uint16 Ogre2 = 624;
|
|
constexpr uint16 SokokarMount = 625;
|
|
constexpr uint16 Giant4 = 626;
|
|
constexpr uint16 SokokarMount2 = 627;
|
|
constexpr uint16 TenthAnniversaryBanner = 628;
|
|
constexpr uint16 TenthAnniversaryCake = 629;
|
|
constexpr uint16 WineCask2 = 630;
|
|
constexpr uint16 HydraMount = 631;
|
|
constexpr uint16 Hydra = 632;
|
|
constexpr uint16 WeddingFlowers = 633;
|
|
constexpr uint16 WeddingArbor = 634;
|
|
constexpr uint16 WeddingAltar = 635;
|
|
constexpr uint16 PowderKeg = 636;
|
|
constexpr uint16 Apexus = 637;
|
|
constexpr uint16 Bellikos = 638;
|
|
constexpr uint16 BrellsFirstCreation = 639;
|
|
constexpr uint16 Brell = 640;
|
|
constexpr uint16 CrystalskinAmbuloid = 641;
|
|
constexpr uint16 CliknarQueen = 642;
|
|
constexpr uint16 CliknarSoldier = 643;
|
|
constexpr uint16 CliknarWorker = 644;
|
|
constexpr uint16 Coldain2 = 645;
|
|
constexpr uint16 Coldain3 = 646;
|
|
constexpr uint16 CrystalskinSessiloid = 647;
|
|
constexpr uint16 Genari = 648;
|
|
constexpr uint16 Gigyn = 649;
|
|
constexpr uint16 GrekenYoungAdult = 650;
|
|
constexpr uint16 GrekenYoung = 651;
|
|
constexpr uint16 CliknarMount = 652;
|
|
constexpr uint16 Telmira = 653;
|
|
constexpr uint16 SpiderMount = 654;
|
|
constexpr uint16 BearMount = 655;
|
|
constexpr uint16 RatMount = 656;
|
|
constexpr uint16 SessiloidMount = 657;
|
|
constexpr uint16 MorellThule = 658;
|
|
constexpr uint16 Marionette = 659;
|
|
constexpr uint16 BookDervish = 660;
|
|
constexpr uint16 TopiaryLion = 661;
|
|
constexpr uint16 RotDog = 662;
|
|
constexpr uint16 Amygdalan = 663;
|
|
constexpr uint16 Sandman = 664;
|
|
constexpr uint16 GrandfatherClock = 665;
|
|
constexpr uint16 GingerbreadMan = 666;
|
|
constexpr uint16 RoyalGuard = 667;
|
|
constexpr uint16 Rabbit = 668;
|
|
constexpr uint16 BlindDreamer = 669;
|
|
constexpr uint16 CazicThule2 = 670;
|
|
constexpr uint16 TopiaryLionMount = 671;
|
|
constexpr uint16 RotDogMount = 672;
|
|
constexpr uint16 GoralMount = 673;
|
|
constexpr uint16 SelyrahMount = 674;
|
|
constexpr uint16 ScleraMount = 675;
|
|
constexpr uint16 BraxiMount = 676;
|
|
constexpr uint16 KangonMount = 677;
|
|
constexpr uint16 Erudite2 = 678;
|
|
constexpr uint16 WurmMount = 679;
|
|
constexpr uint16 RaptorMount = 680;
|
|
constexpr uint16 InvisibleMan2 = 681;
|
|
constexpr uint16 Whirligig = 682;
|
|
constexpr uint16 GnomishBalloon = 683;
|
|
constexpr uint16 GnomishRocketPack = 684;
|
|
constexpr uint16 GnomishHoveringTransport = 685;
|
|
constexpr uint16 Selyrah = 686;
|
|
constexpr uint16 Goral = 687;
|
|
constexpr uint16 Braxi = 688;
|
|
constexpr uint16 Kangon = 689;
|
|
constexpr uint16 InvisibleMan3 = 690;
|
|
constexpr uint16 FloatingTower = 691;
|
|
constexpr uint16 ExplosiveCart = 692;
|
|
constexpr uint16 BlimpShip = 693;
|
|
constexpr uint16 Tumbleweed = 694;
|
|
constexpr uint16 Alaran = 695;
|
|
constexpr uint16 Swinetor = 696;
|
|
constexpr uint16 Triumvirate = 697;
|
|
constexpr uint16 Hadal = 698;
|
|
constexpr uint16 HoveringPlatform = 699;
|
|
constexpr uint16 ParasiticScavenger = 700;
|
|
constexpr uint16 Grendlaen = 701;
|
|
constexpr uint16 ShipInABottle = 702;
|
|
constexpr uint16 AlaranSentryStone = 703;
|
|
constexpr uint16 Dervish4 = 704;
|
|
constexpr uint16 RegenerationPool = 705;
|
|
constexpr uint16 TeleportationStand = 706;
|
|
constexpr uint16 RelicCase = 707;
|
|
constexpr uint16 AlaranGhost = 708;
|
|
constexpr uint16 Skystrider = 709;
|
|
constexpr uint16 WaterSpout = 710;
|
|
constexpr uint16 AviakPullAlong = 711;
|
|
constexpr uint16 GelatinousCube2 = 712;
|
|
constexpr uint16 Cat = 713;
|
|
constexpr uint16 ElkHead = 714;
|
|
constexpr uint16 Holgresh2 = 715;
|
|
constexpr uint16 Beetle3 = 716;
|
|
constexpr uint16 VineMaw = 717;
|
|
constexpr uint16 Ratman2 = 718;
|
|
constexpr uint16 FallenKnight = 719;
|
|
constexpr uint16 FlyingCarpet = 720;
|
|
constexpr uint16 CarrierHand = 721;
|
|
constexpr uint16 Akheva = 722;
|
|
constexpr uint16 ServantOfShadow = 723;
|
|
constexpr uint16 Luclin = 724;
|
|
constexpr uint16 Xaric = 725;
|
|
constexpr uint16 Dervish5 = 726;
|
|
constexpr uint16 Dervish6 = 727;
|
|
constexpr uint16 Luclin2 = 728;
|
|
constexpr uint16 Luclin3 = 729;
|
|
constexpr uint16 Orb = 730;
|
|
constexpr uint16 Luclin4 = 731;
|
|
constexpr uint16 Pegasus3 = 732;
|
|
constexpr uint16 InteractiveObject = 2250;
|
|
constexpr uint16 Node = 2254;
|
|
}
|
|
|
|
namespace RaceBitmask {
|
|
constexpr uint16 Unknown = 0;
|
|
constexpr uint16 Human = 1;
|
|
constexpr uint16 Barbarian = 2;
|
|
constexpr uint16 Erudite = 4;
|
|
constexpr uint16 WoodElf = 8;
|
|
constexpr uint16 HighElf = 16;
|
|
constexpr uint16 DarkElf = 32;
|
|
constexpr uint16 HalfElf = 64;
|
|
constexpr uint16 Dwarf = 128;
|
|
constexpr uint16 Troll = 256;
|
|
constexpr uint16 Ogre = 512;
|
|
constexpr uint16 Halfling = 1024;
|
|
constexpr uint16 Gnome = 2048;
|
|
constexpr uint16 Iksar = 4096;
|
|
constexpr uint16 VahShir = 8192;
|
|
constexpr uint16 Froglok = 16384;
|
|
constexpr uint16 Drakkin = 32768;
|
|
constexpr uint16 All = 65535;
|
|
}
|
|
|
|
namespace RaceIndex {
|
|
constexpr uint16 Human = 1;
|
|
constexpr uint16 Barbarian = 2;
|
|
constexpr uint16 Erudite = 3;
|
|
constexpr uint16 WoodElf = 4;
|
|
constexpr uint16 HighElf = 5;
|
|
constexpr uint16 DarkElf = 6;
|
|
constexpr uint16 HalfElf = 7;
|
|
constexpr uint16 Dwarf = 8;
|
|
constexpr uint16 Troll = 9;
|
|
constexpr uint16 Ogre = 10;
|
|
constexpr uint16 Halfling = 11;
|
|
constexpr uint16 Gnome = 12;
|
|
constexpr uint16 Iksar = 13;
|
|
constexpr uint16 VahShir = 14;
|
|
constexpr uint16 Froglok = 15;
|
|
constexpr uint16 Drakkin = 16;
|
|
}
|
|
|
|
namespace RaceAppearance {
|
|
bool IsValidBeard(uint16 race_id, uint8 gender_id, uint8 beard_value, bool use_luclin = true);
|
|
bool IsValidBeardColor(uint16 race_id, uint8 gender_id, uint8 beard_color_value, bool use_luclin = true);
|
|
bool IsValidDetail(uint16 race_id, uint8 gender_id, uint32 detail_value, bool use_luclin = true);
|
|
bool IsValidEyeColor(uint16 race_id, uint8 gender_id, uint8 eye_color_value, bool use_luclin = true);
|
|
bool IsValidFace(uint16 race_id, uint8 gender_id, uint8 face_value, bool use_luclin = true);
|
|
bool IsValidHair(uint16 race_id, uint8 gender_id, uint8 hair_value, bool use_luclin = true);
|
|
bool IsValidHairColor(uint16 race_id, uint8 gender_id, uint8 hair_color_value, bool use_luclin = true);
|
|
bool IsValidHeritage(uint16 race_id, uint8 gender_id, uint32 heritage_value, bool use_luclin = true);
|
|
bool IsValidTattoo(uint16 race_id, uint8 gender_id, uint32 tattoo_value, bool use_luclin = true);
|
|
bool IsValidWoad(uint16 race_id, uint8 gender_id, uint8 woad_value, bool use_luclin = true);
|
|
|
|
constexpr int HumanMale = (Race::Human << 8) | Gender::Male;
|
|
constexpr int HumanFemale = (Race::Human << 8) | Gender::Female;
|
|
constexpr int BarbarianMale = (Race::Barbarian << 8) | Gender::Male;
|
|
constexpr int BarbarianFemale = (Race::Barbarian << 8) | Gender::Female;
|
|
constexpr int EruditeMale = (Race::Erudite << 8) | Gender::Male;
|
|
constexpr int EruditeFemale = (Race::Erudite << 8) | Gender::Female;
|
|
constexpr int WoodElfMale = (Race::WoodElf << 8) | Gender::Male;
|
|
constexpr int WoodElfFemale = (Race::WoodElf << 8) | Gender::Female;
|
|
constexpr int HighElfMale = (Race::HighElf << 8) | Gender::Male;
|
|
constexpr int HighElfFemale = (Race::HighElf << 8) | Gender::Female;
|
|
constexpr int DarkElfMale = (Race::DarkElf << 8) | Gender::Male;
|
|
constexpr int DarkElfFemale = (Race::DarkElf << 8) | Gender::Female;
|
|
constexpr int HalfElfMale = (Race::HalfElf << 8) | Gender::Male;
|
|
constexpr int HalfElfFemale = (Race::HalfElf << 8) | Gender::Female;
|
|
constexpr int DwarfMale = (Race::Dwarf << 8) | Gender::Male;
|
|
constexpr int DwarfFemale = (Race::Dwarf << 8) | Gender::Female;
|
|
constexpr int TrollMale = (Race::Troll << 8) | Gender::Male;
|
|
constexpr int TrollFemale = (Race::Troll << 8) | Gender::Female;
|
|
constexpr int OgreMale = (Race::Ogre << 8) | Gender::Male;
|
|
constexpr int OgreFemale = (Race::Ogre << 8) | Gender::Female;
|
|
constexpr int HalflingMale = (Race::Halfling << 8) | Gender::Male;
|
|
constexpr int HalflingFemale = (Race::Halfling << 8) | Gender::Female;
|
|
constexpr int GnomeMale = (Race::Gnome << 8) | Gender::Male;
|
|
constexpr int GnomeFemale = (Race::Gnome << 8) | Gender::Female;
|
|
constexpr int IksarMale = (Race::Iksar << 8) | Gender::Male;
|
|
constexpr int IksarFemale = (Race::Iksar << 8) | Gender::Female;
|
|
constexpr int VahShirMale = (Race::VahShir << 8) | Gender::Male;
|
|
constexpr int VahShirFemale = (Race::VahShir << 8) | Gender::Female;
|
|
constexpr int FroglokMale = (Race::Froglok2 << 8) | Gender::Male;
|
|
constexpr int FroglokFemale = (Race::Froglok2 << 8) | Gender::Female;
|
|
constexpr int DrakkinMale = (Race::Drakkin << 8) | Gender::Male;
|
|
constexpr int DrakkinFemale = (Race::Drakkin << 8) | Gender::Female;
|
|
}
|
|
|
|
#endif
|
|
|