#pragma once
#include <windows.h>
#include <iostream>
#include <string>
#include <bitset>
using namespace std;
using std::string;
using std::bitset;
#include	"C:\L\List\List.h"
//#include "C:\L\Avatars\Item.h"
//#include "C:\L\Avatars\Skill.h"
//#include "C:\L\Avatars\Spell.h"
//#include "C:\L\Quest\Quest.h"
#define		maxNameLength	32
#define		maxNumClasses	4			//A slot for each of the four major class types (Figters, Mages, Thieves, Priests)
#define		maxHpRolls		10			//10 for thieves and wizards
const		maxBitArray		= 32;		//bitset restriction...
const		maxNumAvatars	= 10;		//Used with Avatar.dat file system...
enum Sexes		{ MALE = 0, FEMALE, TOTAL_SEXES };

#define MAX_ClassLevel 21
struct AvClassBasics
{
	//21 represents levels '0' through '20'
	int		THAC0s[MAX_ClassLevel];
	string	ClassName;
};
enum PC_StartingRaces
{
	startDwarf = 0, startElf, startGnome, startHalfElf, startHalfling, startHuman, MAX_startRACES
};
enum Races//---------------------------------------------------------------------------------------------------//
{
	/*
	Note: Only certain case:'s are active for the first release of this project.
	Later on as individual Mobs are needed, they will get un-commented to become
	active. And because of this reason, that is why the individual line-comments 
	are used instead of block-comments - M. White 26 July, 2019	
	*/
//	rAarakocra,
//	rAboleth,
//	rAnkheg03, rAnkheg04, rAnkheg05, rAnkheg06, rAnkheg07, rAnkheg08, 
//	rArcane, 
//	rArgos05, rArgos06, rArgos07, rArgos08, rArgos09, rArgos10, 
//	rAurumvorax,
//	rBaatezu_BlackAbishai, rBaatezu_GreenAbishai, rBaatezu_PitFiend, rBaatezu_RedAbishai, 
//	rBanshee,
//	rBasilisk_Lesser, rBasilisk_Greater, rBasilisk_Dracolisk, 
	//TODO: Remove this assignment in favor of Monsters previous to this entry as they become active - M. White 12 July, 2019
	rBat_Common = 0,
//	rBat_Large, rBat_Huge, rBat_Azmyth, rBat_NightHunter, rBat_Sinister, 
//	rBear_Black, rBear_Brown, rBear_Cave, rBear_Polar, 
//	rBeetleGiant_Bombardier, rBeetleGiant_BoringFire, rBeetleGiant_Rhinoceros, rBeetleGiant_Stag, rBeetleGiant_Water, 
//	rBehir,
//	rBeholder_Normal, rBeholder_DeathKiss, rBeholder_EyeOfTheDeep, rBeholder_Gauth, rBeholder_Spectator, rBeholder_Undead, 
//	rBeholder_HiveMother, rBeholder_Director, rBeholder_Examiner, rBeholder_Lensman, rBeholder_Overseer, rBeholder_Watcher, 
	rBhut,
//	rBird_rBloodHawk, rBird_Boobrie,
	rBird_Chicken, rBird_ChickenSuper,
//	rBird_Condor, rBird_Crow, rBird_EagleGiant, rBird_EagleWild, rBird_Eblis, rBird_Falcon, 
//	rBird_Flightless, rBird_HawkLarge, rBird_Owl, rBird_OwlGiant, rBird_OwlTalking, rBird_Raven, rBird_RavenHuge, 
//	rBird_RavenGiant, rBird_Swan, rBird_Vulture, rBird_VultureGiant, 
//	rBrainMole, 
//	rBrokenOne_Common, rBrokenOne_Greater, 
//	rBrownie_Normal, rBrownie_Killmoulis, 
	rBugbear_Normal, rBugbear_Young, rBugbear_Guard,
	//rBugbear_Leader, rBugbear_Chief,
	rBugbear_Shaman, 
	rBulette, 
//	rBullywug,
//	rCarrionCrawler, 
//	rCatGreat_Cheetah, rCatGreat_Jaguar, rCatGreat_Leopard, rCatGreat_CommonLion, rCatGreat_MountainLion, rCatGreat_SpottedLion, 
//	rCatGreat_GiantLynx, rCatGreat_WildTiger, rCatGreat_Smilodon, rCatSmall_Domestic, rCatSmall_Wild, rCatSmall_Elven, 
//	rCatoblepas, rCaveFisher,
//	rCentaur_Normal, rCentaur_Leader, rCentaur_Priest, 
//	rCentipede_Giant, rCentipede_Huge, rCentipede_Megalo, rCentipede_Tunnel, 
//	rChimera_Normal, rChimera_Gorgimera, 
//	rCloaker, 
//	rCockatrice_Normal, rCockatrice_Pyrolisk,
//	rCouatl, 
//	rCrabman, 
//	rCrawlingClaw, 
//	rCrocodile_Normal, rCrocodile_Giant, 
//	rCrustacean_GiantCrab, rCrustacean_GiantCrayfish, rCryptThing,
//	rDeathKnight, 
//	rDeepspawn, 
//	rDinosaur_Ankylosaurus, rDinosaur_Deinonychus, rDinosaur_Diplodocus, rDinosaur_Elasmosaurus, rDinosaur_Lambeosaurus, 
//	rDinosaur_Pteranodon, rDinosaur_Stegosaurus, rDinosaur_Triceratops, rDinosaur_Tyrannosaurus, 
//	rDisplacerBeast, 
//	rDog_Wild, rDog_War, rDog_Blink, rDog_Death, rDog_Moon, 
//	rDolphin, rDoppleganger,
//	rDracolich_Black06, rDracolich_Black08, rDracolich_Black10, rDracolich_Black12, rDracolich_Black13,			//
//	rDracolich_Black14, rDracolich_Black15, rDracolich_Black16, rDracolich_Black17, rDracolich_Black18,			//
//	rDracolich_Black19, rDracolich_Black20,																		//
//	rDracolich_Blue08, rDracolich_Blue10, rDracolich_Blue12, rDracolich_Blue14, rDracolich_Blue15,				//
//	rDracolich_Blue16, rDracolich_Blue17, rDracolich_Blue18, rDracolich_Blue19, rDracolich_Blue20,				//
//	rDracolich_Blue21, rDracolich_Blue22,																		//
//	rDracolich_Green07,	rDracolich_Green09, rDracolich_Green11, rDracolich_Green13, rDracolich_Green14,			//
//	rDracolich_Green15,	rDracolich_Green16, rDracolich_Green17, rDracolich_Green18, rDracolich_Green19,			//
//	rDracolich_Green20,	rDracolich_Green21,																		//
//	rDracolich_Red09, rDracolich_Red11, rDracolich_Red13, rDracolich_Red15, rDracolich_Red16,					//
//  rDracolich_Red17, rDracolich_Red18, rDracolich_Red19, rDracolich_Red20, rDracolich_Red21,					//
//	rDracolich_Red22, rDracolich_Red23,																			//
//	rDracolich_White05, rDracolich_White07, rDracolich_White09, rDracolich_White11,	rDracolich_White12,			//
//	rDracolich_White13, rDracolich_White14, rDracolich_White15, rDracolich_White16,	rDracolich_White17,			//
//	rDracolich_White18, rDracolich_White19,																		//
//	rDracolich_Brown08, rDracolich_Brown10,	rDracolich_Brown12, rDracolich_Brown14, rDracolich_Brown15,			//
//	rDracolich_Brown16, rDracolich_Brown17,	rDracolich_Brown18, rDracolich_Brown19, rDracolich_Brown20,			//
//	rDracolich_Brown21, rDracolich_Brown22,																		//
//	rDracolich_Cloud08, rDracolich_Cloud10, rDracolich_Cloud12, rDracolich_Cloud14, rDracolich_Cloud15,			//
//	rDracolich_Cloud16, rDracolich_Cloud17, rDracolich_Cloud18, rDracolich_Cloud19, rDracolich_Cloud20,			//
//	rDracolich_Cloud21, rDracolich_Cloud22,																		//
//	rDracolich_Deep08, rDracolich_Deep10, rDracolich_Deep12, rDracolich_Deep14, rDracolich_Deep15,				//
//	rDracolich_Deep16, rDracolich_Deep17, rDracolich_Deep18, rDracolich_Deep19, rDracolich_Deep20,				//
//	rDracolich_Deep21, rDracolich_Deep22,																		//
//	rDracolich_Mercury05, rDracolich_Mercury07,	rDracolich_Mercury09, rDracolich_Mercury11, rDracolich_Mercury12,//
//	rDracolich_Mercury13, rDracolich_Mercury14,	rDracolich_Mercury15, rDracolich_Mercury16, rDracolich_Mercury17,//
//	rDracolich_Mercury18, rDracolich_Mercury19,																	//
//	rDracolich_Mist05, rDracolich_Mist07, rDracolich_Mist09, rDracolich_Mist11, rDracolich_Mist12,				//
//	rDracolich_Mist13, rDracolich_Mist14, rDracolich_Mist15, rDracolich_Mist16, rDracolich_Mist17,				//
//	rDracolich_Mist18, rDracolich_Mist19,																		//
//	rDracolich_Shadow06, rDracolich_Shadow08, rDracolich_Shadow10, rDracolich_Shadow12, rDracolich_Shadow13,	//
//	rDracolich_Shadow14, rDracolich_Shadow15, rDracolich_Shadow16, rDracolich_Shadow17, rDracolich_Shadow18,	//
//	rDracolich_Shadow19, rDracolich_Shadow20,																	//
//	rDracolich_Steel05, rDracolich_Steel07, rDracolich_Steel09,	rDracolich_Steel11, rDracolich_Steel12,			//
//	rDracolich_Steel13, rDracolich_Steel14, rDracolich_Steel15,	rDracolich_Steel16, rDracolich_Steel17,			//
//	rDracolich_Steel18, rDracolich_Steel19,																		//
//	rDracolich_Amethyst08, rDracolich_Amethyst10, rDracolich_Amethyst12, rDracolich_Amethyst14, rDracolich_Amethyst15,
//	rDracolich_Amethyst16, rDracolich_Amethyst17, rDracolich_Amethyst18, rDracolich_Amethyst19, rDracolich_Amethyst20, 
//	rDracolich_Amethyst21, rDracolich_Amethyst22,																//
//	rDracolich_Crystal04, rDracolich_Crystal06,	rDracolich_Crystal08, rDracolich_Crystal10, rDracolich_Crystal11,//
//	rDracolich_Crystal12, rDracolich_Crystal13,	rDracolich_Crystal14, rDracolich_Crystal15, rDracolich_Crystal16,//
//	rDracolich_Crystal17, rDracolich_Crystal18,																	//
//	rDracolich_Emerald06, rDracolich_Emerald08, rDracolich_Emerald10, rDracolich_Emerald12, rDracolich_Emerald13,//
//	rDracolich_Emerald14, rDracolich_Emerald15, rDracolich_Emerald16, rDracolich_Emerald17, rDracolich_Emerald18,//
//	rDracolich_Emerald19, rDracolich_Emerald20,																	//
//	rDracolich_Sapphire07, rDracolich_Sapphire09, rDracolich_Sapphire11, rDracolich_Sapphire13, rDracolich_Sapphire14, 
//	rDracolich_Sapphire15, rDracolich_Sapphire16, rDracolich_Sapphire17, rDracolich_Sapphire18, rDracolich_Sapphire19, 
//	rDracolich_Sapphire20, rDracolich_Sapphire21,																//
//	rDracolich_Topaz05, rDracolich_Topaz07, rDracolich_Topaz09, rDracolich_Topaz11,	rDracolich_Topaz12,			//
//	rDracolich_Topaz13, rDracolich_Topaz14, rDracolich_Topaz15, rDracolich_Topaz16,	rDracolich_Topaz17,			//
//	rDracolich_Topaz18, rDracolich_Topaz19,																		//
//	rDracolich_Brass06, rDracolich_Brass08, rDracolich_Brass10, rDracolich_Brass12, rDracolich_Brass13,			//
//	rDracolich_Brass14, rDracolich_Brass15,	rDracolich_Brass16, rDracolich_Brass17, rDracolich_Brass18,			//
//	rDracolich_Brass19, rDracolich_Brass20,																		//
//	rDracolich_Bronze08, rDracolich_Bronze10, rDracolich_Bronze12, rDracolich_Bronze14, rDracolich_Bronze15,	//
//	rDracolich_Bronze16, rDracolich_Bronze17, rDracolich_Bronze18, rDracolich_Bronze19, rDracolich_Bronze20,	//
//	rDracolich_Bronze21, rDracolich_Bronze22,																	//
//	rDracolich_Copper07, rDracolich_Copper09, rDracolich_Copper11, rDracolich_Copper13, rDracolich_Copper14,	//
//	rDracolich_Copper15, rDracolich_Copper16, rDracolich_Copper17, rDracolich_Copper18, rDracolich_Copper19,	//
//	rDracolich_Copper20, rDracolich_Copper21,																	//
//	rDracolich_Gold10, rDracolich_Gold12, rDracolich_Gold14, rDracolich_Gold16, rDracolich_Gold17,				//
//	rDracolich_Gold18, rDracolich_Gold19, rDracolich_Gold20, rDracolich_Gold21, rDracolich_Gold22,				//
//	rDracolich_Gold23, rDracolich_Gold24,																		//
//	rDracolich_Silver09, rDracolich_Silver11, rDracolich_Silver13, rDracolich_Silver15, rDracolich_Silver16,	//
//	rDracolich_Silver17, rDracolich_Silver18, rDracolich_Silver19, rDracolich_Silver20, rDracolich_Silver21,	//
//	rDracolich_Silver22, rDracolich_Silver23,																	//
//	rDragonChrom_Black06,  rDragonChrom_Black08,  rDragonChrom_Black10,  rDragonChrom_Black12,  rDragonChrom_Black13,  rDragonChrom_Black14,  rDragonChrom_Black15,  rDragonChrom_Black16,  rDragonChrom_Black17,  rDragonChrom_Black18,  rDragonChrom_Black19,  rDragonChrom_Black20, 
//	rDragonChrom_Blue08,   rDragonChrom_Blue10,   rDragonChrom_Blue12,   rDragonChrom_Blue14,   rDragonChrom_Blue15,   rDragonChrom_Blue16,   rDragonChrom_Blue17,   rDragonChrom_Blue18,   rDragonChrom_Blue19,   rDragonChrom_Blue20,   rDragonChrom_Blue21,   rDragonChrom_Blue22, 
//	rDragonChrom_Green07,  rDragonChrom_Green09,  rDragonChrom_Green11,  rDragonChrom_Green13,  rDragonChrom_Green14,  rDragonChrom_Green15,  rDragonChrom_Green16,  rDragonChrom_Green17,  rDragonChrom_Green18,  rDragonChrom_Green19,  rDragonChrom_Green20,  rDragonChrom_Green21, 
//	rDragonChrom_Red09,	   rDragonChrom_Red11,    rDragonChrom_Red13,    rDragonChrom_Red15,    rDragonChrom_Red16,    rDragonChrom_Red17,    rDragonChrom_Red18,    rDragonChrom_Red19,    rDragonChrom_Red20,    rDragonChrom_Red21,    rDragonChrom_Red22,    rDragonChrom_Red23, 
//	rDragonChrom_White05,  rDragonChrom_White07,  rDragonChrom_White09,  rDragonChrom_White11,  rDragonChrom_White12,  rDragonChrom_White13,  rDragonChrom_White14,  rDragonChrom_White15,  rDragonChrom_White16,  rDragonChrom_White17,  rDragonChrom_White18,  rDragonChrom_White19, 
//	rDragonChrom_Yellow07, rDragonChrom_Yellow09, rDragonChrom_Yellow11, rDragonChrom_Yellow13, rDragonChrom_Yellow14, rDragonChrom_Yellow15, rDragonChrom_Yellow16, rDragonChrom_Yellow17, rDragonChrom_Yellow18, rDragonChrom_Yellow19, rDragonChrom_Yellow20, rDragonChrom_Yellow21, 
//	rDragonElemental_Brown08, rDragonElemental_Brown10, rDragonElemental_Brown12, rDragonElemental_Brown14, rDragonElemental_Brown15, 
//	rDragonElemental_Brown16, rDragonElemental_Brown17, rDragonElemental_Brown18, rDragonElemental_Brown19, rDragonElemental_Brown20,
//  rDragonElemental_Brown21, rDragonElemental_Brown22,															//
//	rDragonElemental_Cloud08, rDragonElemental_Cloud10,	rDragonElemental_Cloud12, rDragonElemental_Cloud14, rDragonElemental_Cloud15, 
//	rDragonElemental_Cloud16, rDragonElemental_Cloud17, rDragonElemental_Cloud18, rDragonElemental_Cloud19, rDragonElemental_Cloud20,
//	rDragonElemental_Cloud21, rDragonElemental_Cloud22,															//
//	rDragonElemental_Deep08, rDragonElemental_Deep10, rDragonElemental_Deep12, rDragonElemental_Deep14, rDragonElemental_Deep15, 
//	rDragonElemental_Deep16, rDragonElemental_Deep17, rDragonElemental_Deep18, rDragonElemental_Deep19, rDragonElemental_Deep20,
//	rDragonElemental_Deep21, rDragonElemental_Deep22,															//
//	rDragonElemental_Mercury05, rDragonElemental_Mercury07,	rDragonElemental_Mercury09, rDragonElemental_Mercury11, rDragonElemental_Mercury12, 
//	rDragonElemental_Mercury13, rDragonElemental_Mercury14, rDragonElemental_Mercury15, rDragonElemental_Mercury16, rDragonElemental_Mercury17,
//	rDragonElemental_Mercury18, rDragonElemental_Mercury19,														//
//	rDragonElemental_Mist05, rDragonElemental_Mist07, rDragonElemental_Mist09, rDragonElemental_Mist11, rDragonElemental_Mist12, 
//	rDragonElemental_Mist13, rDragonElemental_Mist14, rDragonElemental_Mist15, rDragonElemental_Mist16, rDragonElemental_Mist17,
//	rDragonElemental_Mist18, rDragonElemental_Mist19,															//
//	rDragonElemental_Shadow06, rDragonElemental_Shadow08, rDragonElemental_Shadow10, rDragonElemental_Shadow12, rDragonElemental_Shadow13, 
//	rDragonElemental_Shadow14, rDragonElemental_Shadow15, rDragonElemental_Shadow16, rDragonElemental_Shadow17, rDragonElemental_Shadow18,
//	rDragonElemental_Shadow19, rDragonElemental_Shadow20,														//
//	rDragonElemental_Steel05, rDragonElemental_Steel07, rDragonElemental_Steel09, rDragonElemental_Steel11, rDragonElemental_Steel12, 
//	rDragonElemental_Steel13, rDragonElemental_Steel14, rDragonElemental_Steel15, rDragonElemental_Steel16, rDragonElemental_Steel17,
//	rDragonElemental_Steel18, rDragonElemental_Steel19,															//
//	rDragonGem_Amethyst08, rDragonGem_Amethyst10, rDragonGem_Amethyst12, rDragonGem_Amethyst14, rDragonGem_Amethyst15, 
//	rDragonGem_Amethyst16, rDragonGem_Amethyst17, rDragonGem_Amethyst18, ragonGem_Amethyst19, rDragonGem_Amethyst20,
//	rDragonGem_Amethyst21, rDragonGem_Amethyst22,																//
//	rDragonGem_Crystal04, rDragonGem_Crystal06, rDragonGem_Crystal08, rDragonGem_Crystal10, rDragonGem_Crystal11,//
//	rDragonGem_Crystal12, rDragonGem_Crystal13, rDragonGem_Crystal14, rDragonGem_Crystal15, rDragonGem_Crystal16,//
//	rDragonGem_Crystal17, rDragonGem_Crystal18,																	//
//	rDragonGem_Emerald06, rDragonGem_Emerald08, rDragonGem_Emerald10, rDragonGem_Emerald12, rDragonGem_Emerald13,//
//	rDragonGem_Emerald14, rDragonGem_Emerald15, rDragonGem_Emerald16, rDragonGem_Emerald17, rDragonGem_Emerald18,//
//	rDragonGem_Emerald19, rDragonGem_Emerald20,																	//
//	rDragonGem_Sapphire07, rDragonGem_Sapphire09, rDragonGem_Sapphire11, rDragonGem_Sapphire13, rDragonGem_Sapphire14,
//	rDragonGem_Sapphire15, rDragonGem_Sapphire16, rDragonGem_Sapphire17, rDragonGem_Sapphire18, rDragonGem_Sapphire19,
//	rDragonGem_Sapphire20, rDragonGem_Sapphire21,																//
//	rDragonGem_Topaz05,	rDragonGem_Topaz07, rDragonGem_Topaz09, rDragonGem_Topaz11, rDragonGem_Topaz12,			//
//	rDragonGem_Topaz13, rDragonGem_Topaz14, rDragonGem_Topaz15, rDragonGem_Topaz16, rDragonGem_Topaz17,			//
//	rDragonGem_Topaz18, rDragonGem_Topaz19,																		//
//	rDragonMetallic_Brass06, rDragonMetallic_Brass08, rDragonMetallic_Brass10, rDragonMetallic_Brass12, rDragonMetallic_Brass13, 
//	rDragonMetallic_Brass14, rDragonMetallic_Brass15, rDragonMetallic_Brass16, rDragonMetallic_Brass17, rDragonMetallic_Brass18, 
//	rDragonMetallic_Brass19, rDragonMetallic_Brass20,															//
//	rDragonMetallic_Bronze08, rDragonMetallic_Bronze10, rDragonMetallic_Bronze12, rDragonMetallic_Bronze14, rDragonMetallic_Bronze15, 
//	rDragonMetallic_Bronze16, rDragonMetallic_Bronze17, rDragonMetallic_Bronze18, rDragonMetallic_Bronze19, rDragonMetallic_Bronze20, 
//	rDragonMetallic_Bronze21, rDragonMetallic_Bronze22,															//
//	rDragonMetallic_Copper07, rDragonMetallic_Copper09, rDragonMetallic_Copper11, rDragonMetallic_Copper13, rDragonMetallic_Copper14, 
//	rDragonMetallic_Copper15, rDragonMetallic_Copper16, rDragonMetallic_Copper17, rDragonMetallic_Copper18, rDragonMetallic_Copper19, 
//	rDragonMetallic_Copper20, rDragonMetallic_Copper21,															//
//	rDragonMetallic_Gold10, rDragonMetallic_Gold12, rDragonMetallic_Gold14, rDragonMetallic_Gold16, rDragonMetallic_Gold17, 
//	rDragonMetallic_Gold18, rDragonMetallic_Gold19,	rDragonMetallic_Gold20, rDragonMetallic_Gold21, rDragonMetallic_Gold22, 
//	rDragonMetallic_Gold23, rDragonMetallic_Gold24,																//
//	rDragonMetallic_Silver09, rDragonMetallic_Silver11, rDragonMetallic_Silver13, rDragonMetallic_Silver15, rDragonMetallic_Silver16, 
//	rDragonMetallic_Silver17, rDragonMetallic_Silver18, rDragonMetallic_Silver19, rDragonMetallic_Silver20, rDragonMetallic_Silver21, 
//	rDragonMetallic_Silver22, rDragonMetallic_Silver23,															//
//	rDragonTurtle12, rDragonTurtle13, rDragonTurtle14, 
//	rDragonet_Faerie, rDragonet_Firedrake04, rDragonet_Pseudo, 
//	rDragonne, 
//	rDryad, 
//	rDwarf_Hill, rDwarf_Mountain, rDwarf_Derro, rDwarf_Duergar01, rDwarf_Duergar02, rDwarf_Duergar03, rDwarf_Duergar04,
//	rElementalAir08, rElementalAir12, rElementalAir16,
//	rElementalEarth08, rElementalEarth12, rElementalEarth16,
//	rElementalFire08, rElementalFire12, rElementalFire16,
//	rElementalWater08, rElementalWater12, rElementalWater16,
//	rElementalKin_Sylph, rElementalKin_AerialServant, rElementalKin_Pech, rElementalKin_Sandling,
//	rElementalKin_Salamander, rElementalKin_FireSnake, rElementalKin_Nereid, rElementalKin_WaterWeird,
//	rElementalComposite_Tempest09, rElementalComposite_Tempest10, rElementalComposite_Tempest11,
//	rElementalComposite_Tempest12, rElementalComposite_Skriaxit16, rElementalComposite_Skriaxit24,
//	rElephant_African, rElephant_Mammoth, rElephant_Mastodon, rElephant_Oliphant, 
//	rElf_High, rElf_Aquatic, rElf_Drow, rElf_DrowPriest, rElf_Drider, rElf_DriderMage, rElf_DriderPriest, 
//	rEttercap, 
//	rEyewing,
//	rFeyr_Normal, rFeyr_GreatFeyr, 
//	rFish_Barracuda01, rFish_Barracuda02, rFish_Barracuda03, rFish_CarpGiant09, rFish_CarpGiant10, rFish_CarpGiant11, 
//	rFish_CarpGiant12, rFish_CatfishGiant07, rFish_CatfishGiant08, rFish_CatfishGiant09, rFish_CatfishGiant10, rFish_Dragonfish, 
//	rFish_EelElectric, rFish_EelGiant, rFish_EelMarine06, rFish_EelMarine07, rFish_EelMarine08, rFish_EelWeed, rFish_GarGiant, 
//	rFish_Lamprey, rFish_LampreyGiant, rFish_LampreyLand, rFish_MantaRay08, rFish_MantaRay09, rFish_MantaRay10, rFish_MantaRay11, 
//	rFish_PikeGiant, rFish_Piranha, rFish_PiranhaGiant, rFish_PungiRay, rFish_Quipper, rFish_SeaHorseGiant02, 
//	rFish_SeaHorseGiant03, rFish_SeaHorseGiant04, rFish_Shark03, rFish_Shark04, rFish_Shark05, rFish_Shark06, rFish_Shark07, 
//	rFish_Shark08, rFish_SharkGiant10, rFish_SharkGiant11, rFish_SharkGiant12, rFish_SharkGiant13, rFish_SharkGiant14, 
//	rFish_SharkGiant15, rFish_StingRay, 
//	rFrog_Giant01, rFrog_Giant02, 
	rFrog_Giant03,
//	rFrog_Killer, rFrog_Poisonous, 
	rFungus_Violet, rFungus_Shrieker,
//	Fungus_Phycomid, rFungus_Ascomoid,
	rFungus_GasSpore,
//	rGalebDuhr08, rGalebDuhr09, rGalebDuhr10, 
//	rGargantua_Reptilian, rGargantua_Humanoid, rGargantua_Insectoid20, rGargantua_Insectoid21, rGargantua_Insectoid22, 
//	rGargantua_Insectoid23, rGargantua_Insectoid24, rGargantua_Insectoid25, rGargantua_Insectoid26, rGargantua_Insectoid27, 
//	rGargantua_Insectoid28, rGargantua_Insectoid29, rGargantua_Insectoid30, 
//	rGargoyle_Gargoyle, rGargoyle_Margoyle,
//	rGenie_Djinni, rGenie_DjinniNoble, rGenie_Dao, rGenie_Efreet, rGenie_Marid, rGenie_Jann,
//	rGhost, 
//	rGhoul_rGhoul, rGhoul_Lacedon, rGhoul_Ghast, 
//	rGiant_CloudAdult, rGiant_CloudInfant, rGiant_CloudJuv01, rGiant_CloudJuv02, rGiant_CloudJuv03, rGiant_Cloud_SpellCaster01, 
//	rGiant_Cloud_SpellCaster02, rGiant_CloudSpellCaster03, rGiant_Cloud_SpellCaster04, rGiant_Cyclopskin, rGiant_Cyclops, 
//	rGiant_Desert, rGiant_Ettin, rGiant_Firbolg, rGiant_FirbolgShaman, rGiant_Fire, rGiant_FireInfant, rGiant_FireJuv01, 
//	rGiant_FireJuv02, rGiant_FireJuv03, rGiant_FireShaman01, rGiant_FireShaman02, rGiant_FireShaman03, rGiant_FireShaman04, 
//	rGiant_Fog, rGiant_Fomorian, rGiant_Frost, rGiant_FrostInfant, rGiant_FrostJuv01, rGiant_FrostJuv02, rGiant_FrostJuv03,
//	rGiant_FrostShaman01, rGiant_FrostShaman02, rGiant_FrostShaman03, rGiant_FrostShaman04, rGiant_Hill, rGiant_HillInfant, 
//	rGiant_HillJuv01, rGiant_HillJuv02, rGiant_HillJuv03, rGiant_Jungle, rGiant_Mountain, rGiant_MountainInfant, 
//	rGiant_MountainJuv, rGiant_MountainShaman02, rGiant_MountainShaman03, rGiant_Reef, rGiant_Stone, rGiant_StoneInfant, 
//	rGiant_StoneJuv01, rGiant_StoneJuv02, rGiant_StoneJuv03, rGiant_StoneElder, rGiant_StoneSpellCaster, rGiant_Storm, 
//	rGiant_StormInfant, rGiant_StormJuv01, rGiant_StormJuv02, rGiant_StormJuv03, rGiant_StormSpellCaster01, 
//	rGiant_StormSpellCaster02, rGiant_StormSpellCaster03, rGiant_StormSpellCaster04, rGiant_Verbeeg, rGiant_Wood, 
//	rGibberling, 
//	rGiff,
//	rGith_Normal, rGith_Pirate07, rGith_Pirate08, rGith_Pirate09, rGith_Pirate10, rGith_Pirate11, rGithyanki, rGithzerai, 
//	rGloomwing_Moth, rGloomwing_TenebrousWorm, 
	rGnoll_Normal, rGnoll_Guard,
//	rGnoll_Leader, rGnoll_Chieftan, 
	rGnoll_Flind, 
	rGnome_Rock,
//	rGnome_Svirfneblin, rGnome_Tinker, rGnome_Forest, rGnome_SprigganMale, rGnome_SprigganFemale, 
	rGoblin_Normal, rGoblin_SubChief, rGoblin_Chief, 
//	rGolem_Stone, rGolem_Iron, rGolem_Flesh, rGolem_Clay, rGolem_Bone, rGolem_Doll, rGolem_rGargoyle, rGolem_rGlass, 
//	rGolem_Necrophidius, rGolem_Scarecrow, rGolem_CaryatidColumn, rGolem_Juggernaut, rGolem_StoneGuardian, 
//	rGorgon, 
//	rGrell_Worker, rGrell_Philosopher, rGrell_Patriarch, 
//	rGremlin_rGremlin, rGremlin_Fremlin, rGremlin_Galltrit, rGremlin_Mite, rGremlin_Snyad, rGremlin_Jermlaine, 
//	rGriffon, 
//	rGrimlock_Normal, rGrimlock_Leader, rGrimlock_Champion, 
//	rGrippli_Normal, rGrippli_Mates, rGrippli_TribeMother,

//	rHag_Annis, rHag_Green, rHag_Sea, 
	rHalfling_Hairfoot,
//	rHalfling_Tallfellow,	rHalfling_Stout
	rHarpy,
//	rHatori_Lesser01, rHatori_Lesser02, rHatori_Lesser03, rHatori_Lesser04, rHatori_Lesser05, rHatori_Greater06,
//	rHatori_Greater07, rHatori_Greater08, rHatori_Greater09, rHatori_Greater10, rHatori_Greater11,				//
//	rHatori_Greater12, rHatori_Greater13, rHatori_Greater14, rHatori_Greater15, rHatori_Greater16,				//
//	rHatori_Greater17, rHatori_Greater18, rHatori_Greater19, rHatori_Greater20, 
//	rHaunt, 
//	rHellrHound04, rHellHound05, rHellHound06, rHellHound07, 
//	rHeucuva, 
//	rHippocampus, 
//	rHippogriff, 
	rHobgoblin_Normal, rHobgoblin_Stripling,
//	rHobgoblin_SubChief, rHobgoblin_Chief, 
//	rHomonculous, 
//	rHookHorror, 
	rHorse_Draft, rHorse_HeavyWar, rHorse_MediumWar, rHorse_LightWar, rHorse_Pony, rHorse_Wild, rHorse_Riding, rHorse_Mule,
	rHuman,
//	rHydra_Hydra05, rHydra_Hydra06, rHydra_Hydra07, rHydra_Hydra08, rHydra_Hydra09, rHydra_Hydra10,	rHydra_Hydra11, 
//	rHydra_Hydra12, rHydra_Lernaean05, rHydra_Lernaean06, rHydra_Lernaean07, rHydra_Lernaean08, rHydra_Lernaean09, 
//	rHydra_Lernaean10, rHydra_Lernaean11, rHydra_Lernaean12, rHydra_Pyrohydra07, rHydra_Pyrohydra08, rHydra_Cryohydra05, 
//	rHydra_Cryohydra06, rHydra_Cryohydra07, rHydra_Cryohydra08,
	rHyena,
//	rImp_Normal, rImp_Quasit, rImp_MephitFire, rImp_MephitIce, rImp_MephitLava, rImp_MephitMist, rImp_MephitSmoke, 
//	rImp_MephitSteam, 
//	rInsect_AntGiant02, rInsect_AntGiant03, rInsect_AntLionGiant, rInsect_Aratha, rInsect_AspisCow, rInsect_AspisDrone, 
//	rInsect_AspisLarva02, rInsect_AspisLarva03, rInsect_AspisLarva04, rInsect_AspisLarva05, rInsect_AssassinBug, 
//	rInsect_BeeWorker, rInsect_BeeSoldier, rInsect_Bumblebee, rInsect_CaveCricket, rInsect_DragonflyGiant, 
//	rInsect_DragonflyLarva, rInsect_EarSeeker, rInsect_Firefriend, rInsect_FlyBluebottle, rInsect_Horsefly, rInsect_Fyrefly, 
//	rInsect_Horax, rInsect_HornetGiant, rInsect_Pernicon, rInsect_PrayingMantis02, rInsect_PrayingMantis03,
//	rInsect_PrayingMantis04, rInsect_PrayingMantis05, rInsect_PrayingMantis06, rInsect_PrayingMantis07,
//	rInsect_PrayingMantis08, rInsect_PrayingMantis09, rInsect_PrayingMantis10, rInsect_PrayingMantis11,
//	rInsect_PrayingMantis12, rInsect_TermiteGiant, rInsect_TermiteHarvester, rInsect_TermiteKing,
//	rInsect_TermiteQueen, rInsect_TermiteSoldier, rInsect_TermiteWorker, rInsect_TickGiant, rInsect_WaspGiant,
//	rInsect_SwarmVelvetAnts, rInsect_SwarmGrasshoppers, rInsect_SwarmLocusts, 
//	rIntellectDevourer_Adult, rIntellectDevourer_Larva, 
//	rInvisibleStalker, 
//	rIxitxachitl01, rIxitxachitl02, rIxitxachitl03, rIxitxachitl04, rIxitxachitl08,
//	rJackalwere,
//	rKenku02, rKenku03, rKenku04, rKenku05,
//	rKiRin, 
//	rKirre, 
	rKobold_Normal, rKobold_Guard, rKobold_Chief,
//	rKobold_Urd02, rKobold_Urd03, rKobold_Urd04, rKobold_Urd05, 
//	rKuoToa_Normal, rKuoToa_Captain, rKuoToa_Lieutenant, rKuoToa_Whip, rKuoToa_Monitor,
//	rLamia_Normal, rLamia_Noble, 
//	rLammasu_Lesser, rLammasu_Greater, 
//	rLeech_Giant01, rLeech_Giant02, rLeech_Giant03,	rLeech_Giant04, rLeech_Throat, rLeech_Swarm, 
//	rLeprechaun, 
	rLeucrotta, 
//	rLich_Normal, rLich_Demilich, 
//	rLivingWall, 
//	rLizard_Fire, rLizard_Giant, rLizard_Minotaur, rLizard_Subterranean,
	rLizardMan_Normal, rLizardMan_Juve,
//	rLizardMan_PatrolLeader, rLizardMan_SubLeader, rLizardMan_WarLeader, 
//	rLizardMan_Shaman03, rLizardMan_Shaman05, rLizardMan_Shaman07, rLizardMan_King, 
//	rLocathah, 
	rLurker_Normal,
//	rLurker_Trapper, rLurker_Forest, 
//	rLycanthrope_SeawolfLesser, rLycanthrope_SeawolfGreater, rLycanthrope_Werebat, rLycanthrope_Werebear, 
//	rLycanthrope_Wereboar, rLycanthrope_Werefox,
	rLycanthrope_Wererat,
//	rLycanthrope_Wereraven, rLycanthrope_Weretiger, 
//	rLycanthrope_Werewolf,
//	rMammal_ApeCarnivorous, rMammal_BaboonWild, rMammal_Badger, rMammal_Banderlog, rMammal_Bhaergala, rMammal_BoarWild, 
//	rMammal_Chattur, rMammal_Cooshee, rMammal_Dakon, rMammal_Debbi, rMammal_Goat, rMammal_Gorilla, rMammal_HsingSing, 
//	rMammal_Hyena, rMammal_Jackal, rMammal_Losel, rMammal_MonkeySpider,	rMammal_PorcupineBlack,	rMammal_PorcupineBrown, 
//	rMammal_Rothe, rMammal_Skunk, rMammal_Sleek, rMammal_StagWild, rMammal_StenchKow, rMammal_Taer, rMammal_Tyrg05, 
//	rMammal_Tyrg06, rMammal_Tyrg07, rMammal_Tyrg08, rMammal_Warthog, rMammal_Weasel, rMammal_Wolverine, rMammalHerd_Camel, 
	rMammalHerd_Cattle01,
//	rMammalHerd_Cattle02, rMammalHerd_Cattle03, rMammalHerd_Cattle04, rMammalHerd_Buffalo, 
//	rMammalHerd_Antelope, rMammalHerd_Sheep, rMammalSmall_Beaver01, rMammalSmall_Beaver02, rMammalSmall_Beaver03,
//	rMammalSmall_Beaver04, rMammalSmall_Chipmunk, rMammalSmall_Ermine, rMammalSmall_Ferret, rMammalSmall_Fox, 
//	rMammalSmall_Gopher, rMammalSmall_Hedgehog, rMammalSmall_Mink, rMammalSmall_Mole, rMammalSmall_Monkey, 
//	rMammalSmall_Mouse, rMammalSmall_Muskrat, rMammalSmall_Opossum, rMammalSmall_Otter, rMammalSmall_OtterSea, 
//	rMammalSmall_OtterGiant, rMammalSmall_Pig, rMammalSmall_PigWild, rMammalSmall_Rabbit, rMammalSmall_Raccoon, 
//	rMammalSmall_Squirrel, rMammalSmall_SquirrelFlying, rMammalSmall_SquirrelGliding, rMammalSmall_SquirrelGiantBlack, 
//	rMammalSmall_Woodchuck, 
//	rManscorpion08, rManscorpion09SquadLeader, rManscorpion09SpellCaster, rManscorpion10SwarmLeader, 
//	rManscorpion10SpellCaster, rManscorpion11Noble, rManscorpion11Sorcerer, rManscorpion12King, rManscorpion12Queen, 
//	rManscorpion12Cleric, 
//	rManticore,
	rMedusa_Normal,
//	rMedusa_Greater, rMedusa_rMaedar, rMedusa_Glyptar, 
//	rMerman01, rMerman02, rMerman03, rMerman04, rMerman05, rMerman06, rMerman07, rMermanShaman, 
//	rMimic_Common07, rMimic_Common08, rMimic_Killer09, rMimic_Killer10, 
//	rMindFlayer_SpellVersion, rMindFlater_PsionicVersion, 
	rMinotaur_Normal,
//	rMinotaur_Elder, 
//	rMist_CrimsonDeath, rMist_Vampiric, 
//	rMold_Brown, rMold_Russet,
	rMold_Yellow, 
//	rMoldMan01, rMoldMan02, rMoldMan03, rMoldMan04, rMoldMan05, rMoldMan06, 
//	rMongrelman01, rMongrelman02, rMongrelman03, rMongrelman04, rMongrelman_Leader, 
//	rMorkoth, 
//	rMuckdweller, 
//	rMudman, 
//	rMummy_Normal,
	rMummy_Cat,
//	rMummy_Greater,
//	rMyconid01, rMyconid02, rMyconid03, rMyconid04, rMyconid05, rMyconid06,
//	rNaga_Guardian11, rNaga_Guardian12, rNaga_Spirit09, rNaga_Spirit10, rNaga_Water07, rNaga_Water08, rNaga_Dark, 
//	rNeogi_Normal, rNeogi_GreatOldMaster, 
//	rNightmare, rNymph,
//	rOctopus_Giant, 
//	rOgre_Normal, rOgre_Leader, rOgre_Chieftan, rOgre_Mage, rOgre_MageChieftan, rOgre_Merrow, rOgre_MerrowLeader, 
//	rOgre_MerrowChieftan, rOgre_Half, rOgre_Ogrillon, 
//	rOSJ_OliveSlime, rOSJ_OliveSlimeCreature, rOSJ_MustardJelly, rOSJ_JellyStun, rOSJ_rOchreJelly, rOSJ_GrayOoze,
//	rOSJ_CrystalOoze,
	rOSJ_GelatinousCube, rOSJ_GreenSlime, rOSJ_SlitheringTracker,
//	rOrc_Normal, rOrc_SubChief, rOrc_Leader, rOrc_Guards, rOrc_Chief, rOrc_BodyGuard, rOrc_Shaman01, rOrc_Shaman03, 
//	rOrc_Shaman05, rOrc_Orog, rOrc_OrogSubChief, rOrc_OrogLeader, rOrc_OrogChief, 
//	rOtyugh_Normal06, rOtyugh_Normal07,
	rOtyugh_Normal08,
//	rOtyugh_NeoOtyugh09, rOtyugh_NeoOtyugh10, rOtyugh_NeoOtyugh11,
//	rOtyugh_NeoOtyugh12, 
	rOwlbear,
//	rPegasus_Normal, rPegasus_Greater, 
//	rPeryton, 
//	rPhantom, 
//	rPhoenix, 
//	rPiercer01, rPiercer02, rPiercer03, rPiercer04, 
//	rPlantD_ChokeCreeper, rPlantD_Mantrap04, rPlantD_Mantrap05, rPlantD_Mantrap06, rPlantD_Mantrap07, rPlantD_Mantrap08, 
//	rPlantD_Mantrap09, rPlantD_RetchPlant05, rPlantD_RetchPlant06, rPlantD_RetchPlant07, rPlantD_RetchPlant08, 
//	rPlantD_Snappersaw, rPlantD_ThornSlinger, rPlantD_TriFlowerFrond, rPlantD_YellowMuskCreeper, rPlantD_YellowMuskZombie, 
//	rPlantI_HangmanTree, rPlantI_Kelpie, rPlantI_Obliviax, rPlantI_Quickwood05, rPlantI_Quickwood06, rPlantI_Quickwood07, 
//	rPlantI_Quickwood08, rPlantI_Quickwood09, rPlantI_Quickwood10,
	rPlantI_ShamblingMound08,
//	rPlantI_ShamblingMound09,
//	rPlantI_ShamblingMound10, rPlantI_ShamblingMound11, rPlantI_Strangleweed02, rPlantI_Strangleweed03, rPlantI_Strangleweed04, 
//	rPlantI_SundewGiant, rPlantI_Thorny, 
//	rPoltergeist,
//	rPuddingDeadly_Black, rPuddingDeadly_White, rPuddingDeadly_Dun, rPuddingDeadly_Brown,
//	rQuaggoth_Normal, rQuaggoth_Jald, rQuaggoth_Thonot,
//	rRakshasa_Normal, rRakshasa_Ruhk, rRakshasa_Rajah, rRakshasa_Maharajah, rRakshasa_Greater,
	rRat_Normal, rRat_Giant,
//	rRat_Osquip, 
//	rRemorhaz07, rRemorhaz08, rRemorhaz09, rRemorhaz10, rRemorhaz11, rRemorhaz12, rRemorhaz13, rRemorhaz14, 
//	rRevenant, 
//	rRoc, 
//	rRoper10, rRoper11, rRoper12, 
	rRustMonster,
//	rSahuagin_Normal, rSahuagin_Lieutenant, rSahuagin_Chieftain, rSahuagin_Priestess, rSahuagin_Baron, rSahuagin_Prince, 
//	rSatyr_Normal, rSatyr_Korred, 
//	rScorpion_Large, rScorpion_Huge, rScorpion_Giant, 
//	rSeaLion,
//	rSelkie_Normal, rSelkie_Leader, 
	rShadow, 
//	rShedu_Lesser, rShedu_Greater, rSirine04, rSirine05, rSirine06, rSirine07, 
	rSkeleton_Normal,
//	rSkeleton_Animal, rSkeleton_Monster, rSkeleton_Giant, rSkeleton_Warrior, 
//	rSlaad_Red, rSlaad_Blue, 
//	rSlug_Giant, 
//	rSnake_Amphisbaena, rSnake_AmphisbaenaElder, rSnake_AmphisbaenaJaculi, rSnake_Boalisk, rSnake_BoaliskElder, 
//	rSnake_BoaliskJaculi, rSnake_ConstrictorNormal, rSnake_ConstrictorNormalElder, rSnake_ConstrictorNormalJaculi, 
//	rSnake_ConstrictorGiant, rSnake_ConstrictorGiantElder, rSnake_ConstrictorGiantJaculi, 
//	rSnake_Heway, rSnake_HewayElder, rSnake_HewayJaculi, rSnake_PoisonNormal, rSnake_PoisonNormalElder, 
//	rSnake_PoisonNormalJaculi, rSnake_PoisonGiant, rSnake_PoisonGiantElder, rSnake_PoisonGiantJaculi, rSnake_GiantSea, 
//	rSnake_GiantSeaElder, rSnake_GiantSeaJaculi, rSnake_Spitting, rSnake_SpittingElder, rSnake_SpittingJaculi, rSnake_Winged, 
//	rSpectre,
//	rSphinx_Androsphinx, rSphinx_Criosphinx, rSphinx_Gynosphinx, rSphinx_Hieracosphinx, 
//	rSpider_Hairy,
	rSpider_Large,
//	rSpider_Huge, rSpider_Giant01, rSpider_Giant02, rSpider_Giant03, rSpider_Giant04, 
//	rSpider_Giant03Flying,  rSpider_Giant04Steeder, rSpider_Giant04TrapDoor, rSpider_Phase, rSpider_Sword,
	rSpider_Wolf,
//	rSpider_Gargantuan07, rSpider_Gargantuan08,
//	rSprite_Normal, rSprite_Sea, rSprite_Pixie, rSprite_Nixie, rSprite_Atomie, rSprite_Grig, 
//	rSquid_Giant, rSquid_Kraken, 
	rStirge,
//	rStirge_Jungle,
//	rSuMonster, 
//	rSwanmay_Normal02, rSwanmay_Normal03, rSwanmay_Normal04, rSwanmay_Normal05, rSwanmay_Normal06, rSwanmay_Normal07, 
//	rSwanmay_Normal08, rSwanmay_Normal09, rSwanmay_Normal10, rSwanmay_Normal11, rSwanmay_Normal12, rSwanmay_BirdMaiden02, 
//	rSwanmay_BirdMaiden03, rSwanmay_BirdMaiden04, rSwanmay_BirdMaiden05, rSwanmay_BirdMaiden06, rSwanmay_BirdMaiden07, 
//	rSwanmay_BirdMaiden08,
//	Tabaxi_Normal, Tabaxi_ClanLeader, Tabaxi_Shaman03, Tabaxi_Shaman05, Tabaxi_Lord,
//	Tako_Male, Tako_Female,	
//	Tanari_Balor, Tanari_Marilith, 
//	Tarrasque, 
//	Tasloi_Normal, Tasloi_Chieftain, Tasloi_Shaman, 
//	ThoughtEater,
//	ThriKreen, 
//	Titan, 
//	ToadGiant_Normal, ToadGiant_Fire, ToadGiant_Ice, ToadGiant_Poisonous, 
//	Treant07, Treant08, Treant09, Treant10, Treant11, Treant12, 
//	Triton03, Triton04, Triton05, Triton06, Triton07, Triton08, Triton08Mage, Triton08Priest, TritonLeader, 
//	Troglodyte_Normal, Troglodyte_Leader, Troglodyte_Guard, Troglodyte_Subchieftain, Troglodyte_Chieftain, 
	rTroll_Normal,
//	rTroll_TwoHeaded, rTroll_Freshwater, rTroll_Saltwater, rTroll_Desert, rTroll_Spectral, rTroll_Giant, 
//	rTroll_Ice,
//	rUmberHulk_Normal, rUmberHulk_Vodyanoi, 
//	rUnicorn, 
//	rUrchin_Black, rUrchin_Green, rUrchin_Land, rUrchin_Red, rUrchin_Silver, rUrchin_Yellow,
//	rVampire_Western, rVampire_Eastern,
//	rWemic_Normal, rWemic_Chief, rWemic_WitchDoctor, rWemic_King,  
//	rWhale_Common12, rWhale_Common13, rWhale_Common14, rWhale_Common15, rWhale_Common16, rWhale_Common17, rWhale_Common18, 
//	rWhale_Common19, rWhale_Common20, rWhale_Common21, rWhale_Common22, rWhale_Common23, rWhale_Common24, rWhale_Common25,
//	rWhale_Common26, rWhale_Common27, rWhale_Common28, rWhale_Common29, rWhale_Common30, rWhale_Common31, rWhale_Common32, 
//	rWhale_Common33, rWhale_Common34, rWhale_Common35, rWhale_Common36, 
//	rWhale_Giant18, rWhale_Giant19, rWhale_Giant20, rWhale_Giant21, rWhale_Giant22, rWhale_Giant23, rWhale_Giant24, 
//	rWhale_Giant25, rWhale_Giant26, rWhale_Giant27, rWhale_Giant28, rWhale_Giant29, rWhale_Giant30, rWhale_Giant31, 
//	rWhale_Giant32, rWhale_Giant33, rWhale_Giant34, rWhale_Giant35, rWhale_Giant36, rWhale_Giant37, rWhale_Giant38, 
//	rWhale_Giant39, rWhale_Giant40, rWhale_Giant41, rWhale_Giant42, rWhale_Giant43, rWhale_Giant44, rWhale_Giant45, 
//	rWhale_Giant46, rWhale_Giant47, rWhale_Giant48, rWhale_Giant49, rWhale_Giant50, rWhale_Giant51, rWhale_Giant52, 
//	rWhale_Giant53, rWhale_Giant54, 
//	rWhale_Leviathan36, rWhale_Leviathan37, rWhale_Leviathan38, rWhale_Leviathan39, rWhale_Leviathan40, rWhale_Leviathan41, 
//	rWhale_Leviathan42, rWhale_Leviathan43, rWhale_Leviathan44, rWhale_Leviathan45, rWhale_Leviathan46, rWhale_Leviathan47, 
//	rWhale_Leviathan48, rWhale_Leviathan49, rWhale_Leviathan50, rWhale_Leviathan51, rWhale_Leviathan52, rWhale_Leviathan53, 
//	rWhale_Leviathan54, rWhale_Leviathan55, rWhale_Leviathan56, rWhale_Leviathan57, rWhale_Leviathan58, rWhale_Leviathan59,
//	rWhale_Leviathan60, rWhale_Leviathan61, rWhale_Leviathan62, rWhale_Leviathan63, rWhale_Leviathan64, rWhale_Leviathan65, 
//	rWhale_Leviathan66, rWhale_Leviathan67, rWhale_Leviathan68, rWhale_Leviathan69,	rWhale_Leviathan70, rWhale_Leviathan71, 
//	rWhale_Leviathan72, 
//	rWhale_Killer09, rWhale_Killer10, rWhale_Killer11, rWhale_Killer12, rWhale_Narwhal04, rWhale_Narwhal05, rWhale_Narwhal06, 
//	rWight, 
	rWill_O_Wisp, 
//	rWolf_Normal,
	rWolf_Worg,
//	rWolf_Dire, rWolf_Winter, rWolfwere, rWorm_Purple, rWorm_GiantBloodworm, rWorm_Bookworm,
	rWorm_RotGrub, 
//	rWraith, rWyvern,
//	rXorn_Normal, rXorn_Xaren,
//	rYeti, 
//	rYuanTi_Normal06, rYuanTi_Normal07, rYuanTi_Normal08, rYuanTi_Normal09, rYuanTi_Abominations, rYuanTi_Histachii, 
//	rYugolothGuardian_Least, rYugolothGuardian_Lesser, rYugolothGuardian_Greater,
//	rZaratan51, rZaratan52, rZaratan53, rZaratan54, rZaratan55, rZaratan56, rZaratan57, rZaratan58, rZaratan59, rZaratan60, 
//	rZaratan61, rZaratan62, rZaratan63, rZaratan64, rZaratan65, rZaratan66, rZaratan67, rZaratan68, rZaratan69, rZaratan70, 
	rZombie_Common,
//	rZombie_Monster, rZombie_JuJu, rZombie_Lord, rZombie_Sea,
	MAXMONS
};
//--------------------------------------------------------------------------------------------------------------//
enum ClassCategory
{
	cZERO_LEVEL = 33, cWARRIOR, cWIZARD, cPRIEST, cROGUE, cCUSTOM, cMONSTER, MAX_ClassCats
};
enum IndividualClasses
{
	cZeroLvl = 0, cFighter, cPaladin, cRanger,
	cWizard, cAbjurer, cTransmuter, cConjurer, cEnchanter, cDiviner, cIllusionist, cInvoker, cNecromancer,
	cCleric, cDruid, 
	cThief, cBard, cNinja,
	//Be concerned when attempting to 
	cFM, cFC, cFD, cFT, cRC, cRD, cMC, cMD, cMT, cTI, cFMC, cFMD, cFMT, cCustom, 
	cMAX_CLASSES
};
/*
enum
Name			Value	Actual
cZeroLvl		0		0-Lvl Fighter
cFighter		1		Fighter
cPaladin		2		Paladin
cRanger			3		Ranger
cWizard			4		Wizard
cAbjurer		5		Specialist Mage - Abjuration
cTransmuter		6		Specialist Mage - Alteration
cConjurer		7		Specialist Mage - Conjuration/Summoning
cEnchanter		8		Specialist Mage - Enchantment/Charm
cDiviner		9		Specialist Mage - Greater Divination
cIllusionist	10		Specialist Mage - Illusion
cInvoker		11		Specialist Mage - Invocation/Evocation
cNecromancer	12		Specialist Mage - Necromancy
cCleric			13		Cleric
cDruid			14		Druid
cThief			15		Thief
cBard			16		Bard
cNinja			17		Ninja (Spy)
cFM				18		Fighter / Mage
cFC				19		Fighter / Cleric
cFD				20		Fighter / Druid
cFT				21		Fighter / Thief
cRC				22		Ranger / Cleric
cRD				23		Ranger / Druid
cMC				24		Mage / Cleric
cMD				25		Mage / Druid
cMT				26		Mage / Thief
cTI				27		Thief / Specialist Mage - Illusionst
cFMC			28		Fighter / Mage / Cleric
cFMD			29		Fighter / Mage / Druid
cFMT			30		Fighter / Mage / Thief
*/
enum NWPs
{
	nwpAlchemy = 0, nwpAlertness, nwpAnimalTraining, nwpAppraising,										//	4
	nwpBalance, nwpBargain, nwpBeeKeeping, nwpBegging, nwpBlacksmithing, nwpBlindFighting,				//	10
	nwpBoasting, nwpBoating, nwpBoatwright, nwpBodyLang, nwpBowyer, nwpBrewing, nwpBribery,				//	17
	nwpBureaucracy, nwpButcher,																			//	19
	//WP 'Canon' (large guns)
	nwpCamouflage, nwpCarpentry, nwpCandleMaker, nwpCartography, nwpCartwright, nwpChanting,			//	25
	nwpCharioteering, nwpCheeseMaking, nwpClayWorking, nwpClimbing, nwpCloseQuarterFighting,			//	30
	nwpCobbling, nwpCommerce, nwpConcealment, nwpCooking,												//	34
	nwpDairyman, nwpDancing, nwpDangerSense, nwpDiagnostics, nwpDiplomacy, nwpDirectionSense,			//	40
	nwpDisguise, nwpDistanceSense,																		//	42
	nwpEavesdropping, nwpEndurance, nwpEngineering, nwpEtiquette, nwpEvasion,							//	47
	nwpFarming, nwpFieldOfStudy, nwpFireBuilding, nwpFishing, nwpFletcher, nwpForaging, nwpForgery,		//	54
	nwpGaming, nwpGemCutting, nwpHerbalism, nwpHiding, nwpHunting,										//	59
	nwpIntimidation,																					//	60
	nwpJumping,																							//	61
	nwpLangAncient, nwpLangModern, nwpLeadership, nwpLeatherworking, nwpLockPicking, nwpLocksmithing,	//	67
	nwpManipulation, nwpMiller, nwpMining, nwpMusicalInstrument,										//	71
	nwpNavigation, nwpNightsight,																		//	73
	nwpObservation, nwpOrienteering,																	//	75
	nwpPickPockets,																						//	76
	nwpReadWrite, nwpRiding, nwpRopeNetMaking, nwpRunning,												//	80
	nwpSeamanship, nwpSeamstressTailor, nwpSetSnaresAndTraps, nwpShadowing, nwpShepherd,				//	85
	nwpShipwright, nwpSignaling, nwpSinging, nwpSoundAnalysis, nwpSpeedCasting, nwpSpellcraft,			//	91
	nwpStealth, nwpStonemasonry, nwpStreetSense, nwpSurvival, nwpSwimming,								//	96
	nwpTeaching, nwpTightropeWalking, nwpTrapDetect, nwpTumbling,										//	100
	nwpVetHealing, nwpVentriloquism,																	//	102
	nwpWaterDivine, nwpWeaving, nwpWineMaking,															//	105
	MAX_NWPs
};
enum WeaponProficiencies
{
	wpArquebus = 0, wpAwlPike, wpAxeBattle, 
	wpBardiche, wpBecDeCorbin, wpBillGuisarme, wpBlowgun, wpBowCompLong, wpBowCompShort, wpBowLong, wpBowShort,  
	wpClub, wpCrossbowHand, wpCrossbowHeavy, wpCrossbowLight, 
	wpDagger, wpDart, wpDirk,  
	wpFauchard, wpFauchardFork, wpFlailFoot, wpFlailHorse, wpFlintLocks,
	wpGlaiveGuisarme, wpGuisarme, wpGuisarmeVoulge, 
	wpHalberd, wpHookFauchard, 
	wpJavelin,
	wpKhopesh, wpKnife, 
	wpLanceHvy, wpLanceLgt, wpLanceMed, wpLucernHammer, 
	wpMaceFoot, wpMaceHorse, wpMancatcher, wpMilitaryFork, wpMorningStar, 
	wpPartisan, wpPickFoot, wpPickHorse, 
	wpQuarterstaff, 
	wpRansuer,
	wpScourge, wpSickle, wpSpectum, wpSling, wpSpear, wpStaffSling,
	wpSwordBastard, wpSwordBroad, wpSwordLong, wpSwordScimitar, wpSwordShort, wpSwordTwoHanded, 
	wpTrident, 
	wpVoulge, 
	wpWarhammer, wpWhip, 
	MAX_WEAPONPRO
};
enum CmbtVals
{
	cmbtRace = 0, cmbtCombatValue, cmbtSaveValue, cmbtHDLevel, cmbtArmorAllowed, cmbtWeaponsAllowed, 
	cmbtHPAfter9th, cmbtTOTAL_CmbtValues
};
enum OptVals
{
	FighterCon = 0, FighterExStr, AnimalEmp, BonusHitCreature, ReadLang, AuraOfPro, Backstab, CastAnyPriest, 
	ClimbWalls, FindRemove, HealAsPal, HearNoise, HideShadows, AnyMageSpell, MoveSilent, OpenLocks, PickPockets,
	FollowAsWarrior, FollowAsCleric, FollowAsThief, FollowAsMage,
	TOTAL_OptVals
};
enum Restrict
{
	CantKeepMuch = 0, MustDonate, NonHuman9, NonHuman12, HasEthos, Cant10Magic, 
	Cant6Magic, CantClass, CantAlign, TOTAL_Restricts
};
const int noKit = -1;
enum WarriorKits
{
	//FIGHTER
	warAmazon = noKit + 1, 
	warBarbarian, 
	warBeastRider, 
	warBerserker, 
	warCavalier, 
	warGladiator, 
	warMyrmidon, 
	warNobleWarrior, 
	warPeasantHero, 
	warPirate, 
	warOutlaw, 
	warSamurai, 
	warSavage, 
	warSwashbuckler, 
	warWildernessWarrior,
	
	//PALADIN
	palPaladin,
	palChevalier,
	palDivinate,
	palEnvoy,
	palEquerry,
	palErrant,
	palExpatriate, 
	palGhosthunter,
	palInquisitor,
	palMedician,
	palMilitarist,
	palSkyrider,
	palSquire, 
	palVotary, 
	palWyrmslayer,
	
	//RANGER
	ranBeastmaster,
	ranExplorer,
	ranFalconer,
	ranFeralan,
	ranForestRunner,
	ranGiantKiller, 
	ranGreenwoodRanger,
	ranGuardian,
	ranJustifier,
	ranMountainMan,
	ranPathfinder, 
	ranSeaRanger,
	ranSeeker,
	ranStalker,
	ranWarden,
	MAX_warKits
};
enum PriestKits
{
	//PRIEST
	priAmazonPriestess = MAX_warKits,
	priBarbarian,
	priBerserker,
	priFightingMonk,
	priNobleman,
	priOutlaw, 
	priPacifist,
	priPeasant,
	priProphet,
	priSavage,
	priScholar,

	//DRUID
	druAdviser,
	druAvenger,
	druBeastfriend,
	druGuardian,
	druHivemaster,
	druLost, 
	druNaturalPhilosopher,
	druOutlaw,
	druPacifist,
	druSavage,
	druShapeshifter,
	druTotemic, 
	druVillage,
	druWanderer,
	MAX_priKits
};
enum RogueKits
{
	//ROGUE
	rogAcrobat = MAX_priKits,
	rogAdventurer,
	rogAssassin,
	rogBandit,
	rogBeggar,
	rogBountyHunter, 
	rogBuccaneer,
	rogBurglar,
	rogCutpurse,
	rogFence,
	rogInvestigator,
	rogScout, 
	rogSmuggler,
	rogSpy,
	rogSwashbuckler,
	rogSwindler,
	rogThug,
	rogTroubleshooter,

	//BARD
	barTrueBard,
	barBlade,
	barCharlatan,
	barGallant,
	barGypsy,
	barHerald,
	barJester, 
	barJongleur,
	barLoremaster,
	barMeistersinger,
	barRiddlemaster,
	barSkald,
	barThespian,

	//NINJA
	ninStealerIn,
	ninShadowWarrior,
	ninIntruder,
	ninConsort,
	ninPathfinder,
	ninLoneWolf, 
	ninSpiritWarrior,
	ninSpy,
	MAX_rogKits
};
enum WizardKits
{
	//WIZARD
	wizAcademician = MAX_rogKits,
	wizAmazonSorceress,
	wizAnagakok,
	wizMilitantWizard,
	wizMystic, 
	wizPatrician,
	wizPeasant,
	wizSavage,
	wizWitch,
	wizWuJen,
	MAX_wizKits
};
//This const has to be at the tail end of the kit enums...
const int kitsMaxKits = MAX_wizKits;
//Class XP requirement Charts
enum AvatarStatuses
{
	asNewAv = 0, asMultiClass, 
	asMAX
};
const bool ClassesAllowed[cMAX_CLASSES][MAX_startRACES] =
{	//Dwarf		Elf		Gnome	HaElf	HaLin	Human
	{ true,		true,	true,	true,	true,	true  },	//cZeroLvl
	{ true,		true,	true,	true,	true,	true  },	//cFighter
	{ false,	false,	false,	false,	false,	true  },	//cPaladin
	{ false,	true,	false,	true,	false,	true  },	//crRanger
	{ false,	true,	false,	true,	false,  true  },	//cWizard
	{ false,	true,	false,	true,	false,  true  },	//cAbjurer
	{ false,	true,	false,	true,	false,  true  },	//cTransmuter
	{ false,	true,	false,	true,	false,  true  },	//cConjurer
	{ false,	true,	false,	true,	false,  true  },	//cEnchanter
	{ false,	true,	false,	true,	false,  true  },	//cDiviner
	{ false,	true,	true,	true,	false,  true  },	//cIllusionist
	{ false,	true,	false,	true,	false,  true  },	//cInvoker
	{ false,	true,	false,	true,	false,  true  },	//cNecromancer
	{ false,	true,	true,	true,	true,	true  },	//cCleric
	{ false,	true,	false,	true,	false,  true  },	//cDruid
	{ false,	true,	true,	true,	true,	true  },	//cThief
	{ false,	true,	false,	true,	false,  true  },	//cBard
	{ false,	true,	false,	false,	false,  true  },	//cNinja
	{ false,	true,	false,	true,	false,  false },	//cFM
	{ true,		false,	false,	true,	false,  false },	//cFC
	{ false,	false,	false,	true,	false,  false },	//cFD
	{ true,		true,	true,	true,	true,	false },	//cFT
	{ false,	false,	false,	true,	false,  false },	//cRC
	{ false,	false,	false,	true,	false,  false },	//cRD
	{ false,	false,	false,	true,	false,  false },	//cMC
	{ false,	false,	false,	true,	false,  false },	//cMD
	{ false,	true,	false,	true,	false,  false },	//cMT
	{ false,	false,	true,	false,	false,  false },	//cTI
	{ false,	false,	false,	true,	false,  false },	//cFMC
	{ false,	false,	false,	true,	false,  false },	//cFMD
	{ false,	true,	false,	true,	false,  false },	//cFMT
	{ true,		true,	true,	true,	true,	true }		//cCustom
};
	//cZeroLvl, cFighter,	cPaladin,	cRanger,	cWizard,	cAbjurer, cTransmuter, cConjurer, cEnchanter, cDiviner, cIllusionist, cInvoker, cNecromancer,	cCleric,	cDruid,		cThief,		cBard,		cNinja
const bool WeaponsAllowed[MAX_WEAPONPRO][cMAX_CLASSES] =
{
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpArquebus
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpAwlPike
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpAxeBattle
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpBardiche
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpBecDeCorbin
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpBillGuisarme
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		false,		false,		false,		true,		true }, //	wpBlowgun
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpBowCompLong
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpBowCompShort
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpBowLong
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true,		true }, //	wpBowShort
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true,		true,		true,		true }, //	wpClub
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true,		true }, //	wpCrossbowHand
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpCrossbowHeavy
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpCrossbowLight
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		false,		true,		true,		true,		true }, //	wpDagger
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		false,		true,		true,		true,		true }, //	wpDart
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		false,		false,		false,		true,		true }, //	wpDirk
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpFauchard
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpFauchardFork
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpFlailFoot
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpFlailHorse
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpFlintLocks
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpGlaiveGuisarme
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpGuisarme
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpGuisarmeVoulge
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpHalberd
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpHookFauchard
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpJavelin
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpKhopesh
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		false,		false,		true,		true,		true }, //	wpKnife
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpLanceHvy
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpLanceLgt
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpLanceMed
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpLucernHammer
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpMaceFoot
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpMaceHorse
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpMancatcher
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpMilitaryFork
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpMorningStar
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpPartisan
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpPickFoot
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpPickHorse
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true }, //	wpQuarterstaff
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpRansuer
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpScourge
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		true,		true }, //	wpSickle
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpSpectum
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true }, //	wpSling
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		true,		true }, //	wpSpear
	{ true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		true,		false,		false,		true,		true }, //	wpStaffSling
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpSwordBastard
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true,		true }, //	wpSwordBroad
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true,		true }, //	wpSwordLong
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		true,		true }, //	wpSwordScimitar
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true,		true }, //	wpSwordShort
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpSwordTwoHanded
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpTrident
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }, //	wpVoulge
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		false,		false,		true,		true }, //	wpWarhammer
	{ true,		true,		true,		true,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		false,		true,		true }	//	wpWhip
};
enum AvConditionStatuses
{
	csPermDead = 0,			//If not a skeleton, needs to be converted to one
	csUndead,				//A dead Monster that has been turned into some sort of Undead
	csDead,					//Recently died, can either Raised, Resurrected, Reincarnated, or animated as Undead
	csUnconcious,			//Knocked out, or hit points knocked down
	csSleepMagical,			//A spell forcing the sleep
	csSleepNormal,			//Normal sleeping
	csDazed,				//Awake, but under penalties
	csAwake,				//Awake and aware
	csMAX_Statuses
};
enum AvActionStatuses
{
	maIdle = 0,				//Standing, doing nothing...
	maMeander,				//Causually moving around a location...
	maWork,					//Working on something productive (theatrical)...
	maTakeItem,				//Finds Items, or fresh kill...loots the Item(s)...
	maPatrol,				//Following a known path looking for intruders...
	maFindFriend,			//Going to get backup to fight enemy...
	maDefendSpot,			//Stand ground, wait for friends...
	maAttackArcher,			//Detects projectile attack, moves to counter-attack...
	maAttackSpell,			//Detects spell caster, moves to counter-aatack...
	maAttackMelee,			//Attacks closest target...
	maUseSpellAttack,		//Capable of casting spells, use one...
	maAcquireTarget,		//Recently killed an enemy, look for more in the immediate area...
	maMaxMobActions
};
class Avatar
{
public:
	Avatar();
	~Avatar();
	void		Reset				();
	const		Avatar&	operator=	(const Avatar &other);
	const		Avatar*	operator=	(const Avatar *other);
	void		Copy				(Avatar other);

	//Names------------------------------------------------------------------
	void		SetLName			(string LName);
	void		SetFName			(string FName);
	void		SetMName			(string MName);
	string		GetLName			() const;
	string		GetFName			() const;
	string		GetMName			() const;

	//Alignment--------------------------------------------------------------
	void		SetAlign			(int Law, int Good);
	void		SetLaw				(int val);
	int			GetLaw				() const;
	void		SetGood				(int val);
	int			GetGood				() const;
	string		GetAlign			() const;
	string		GetAlignFull		() const;

	//rSex/rRace/Height/Weight-------------------------------------------------
	void		SetSex				(int data);
	int			GetSex				() const;
	void		SetRace				(int data);
	int			GetRace				() const;
	string		GetRaceStr			(int data) const;
	void		SetHeight			(int data);
	int			GetHeight			() const;
	void		SetRandomHeight		();
	void		SetWeight			(int data);
	int			GetWeight			() const;
	void		SetRandomWeight		();
	void		SetRaceIsMonster	(bool data);
	bool		GetRaceIsMonster	() const;

	//Class------------------------------------------------------------------
	void		SetClass			(int d);
	void		SetClassByRef		(int val);
	int			GetClassRef			() const;
	bool		CanBeTheseClasses	(int index);
	string		ShowClassComboStr	(int index);
	int			GetClass			(int i) const;
	string		GetClassStr			(int i) const;
	string		GetClassNam			(int i) const;
	void		SetNumClass			(int i);
	int			GetNumClass			() const;
	void		SetClassXP			(int index, int value);
	int			GetClassXP			(int index) const;
	void		AddXP				(int adjusting);
	void		SetClassLvl			(int index, int level);
	int			GetClassLvl			(int index) const;

	//Class Kits-------------------------------------------------------------
	void		SetKit				(int i, int data);
	int			GetKit				(int i) const;
	string		GetKitStr			(int i) const;
	string		GetKitNam			(int i) const;

	//rStats------------------------------------------------------------------
	void		SetSStr				(int data);
	int			GetSStr				() const;
	void		SetStrE				(int data);
	int			GetStrE				() const;
	void		SetSDex				(int data);
	int			GetSDex				() const;
	void		SetSCon				(int data);
	int			GetSCon				() const;
	void		SetSInt				(int data);
	int			GetSInt				() const;
	void		SetSWis				(int data);
	int			GetSWis				() const;
	void		SetSCha				(int data);
	int			GetSCha				() const;
	void		SetSCom				(int data);
	int			GetSCom				() const;

	void		ResetStartingStats	();
	
	void		SetAStr				(float data);
	float		GetAStr				() const;
	void		SetADex				(float data);
	float		GetADex				() const;
	void		SetACon				(float data);
	float		GetACon				() const;
	void		SetAInt				(float data);
	float		GetAInt				() const;
	void		SetAWis				(float data);
	float		GetAWis				() const;
	void		SetACha				(float data);
	float		GetACha				() const;
	void		SetACom				(float data);
	float		GetACom				() const;

	void		CheckStatsByRace	();

	//Custom Character Class methods
	void		SetCmbtValue		(int Index, double Data);
	double		GetCmbtValue		(int Index) const;
	int			GetCustomCmbtValue	() const;

	double		GetTotalMult		() const;

	void		SetOptionalAbil		(int Index, bool Data);
	void		ReverseOptional		(int Index);
	bool		GetOptionalAbil		(int Index) const;
	string		GetOptTF			(int Index) const;

	void		SetRestriction		(int Index, bool Data);
	void		ReverseRestrict		(int Index);
	bool		GetRestriction		(int Index) const;
	string		GetResTF			(int Index) const;

	void		SetSaveAsClass		(int data);
	int			GetSaveAsClass		() const;

	void		calTotalMult		();
	void		ResetCustom			();

	//Kits
	//TODO:-------------------------------------------------//

	//------------------------------------------------------//

	//Weapon proficiencies...
	void		AssignNumWeaPros	();
	void		SetMaxNumWPs		(int i);
	int			GetNumMaxWPslots	() const;
	int			GetNumWPsUsed		() const;
	void		ResetWPsUsed		();
	void		CalcWPsSlots		();
	void		AssignWeaponSlot	(int index, int data);
	int			GetWPSlotCost		(int i) const;
	string		GetWProName			(int i) const;
	void		ResetWPs			();

	//Non-weapon Proficiencies...
	void		AssignNumNWPs		();
	int			GetNumMaxNWPslots	() const;
	int			GetNumNWPSAllocated	() const;
	void		CalNWPslots			();
	void		AssignNWPSlot		(int index, int data);
	int			GetNWPnumSlotsAll	(int index) const;
	void		ResetNWPs			();
	string		GetNWPStr			(int index);

	void		SetDataIndex		(int index);
	int			GetDataIndex		() const;

	void		SetWorldX			(int x);
	int			GetWorldX			() const;
	void		SetWorldY			(int y);
	int			GetWorldY			() const;
	void		SetWorldZ			(int z);
	int			GetWorldZ			() const;
	void		SetDungeonX			(int x);
	int			GetDungeonX			() const;
	void		SetDungeonY			(int y);
	int			GetDungeonY			() const;
	void		SetDungeonZ			(int z);
	int			GetDungeonZ			() const;

	void		SetFacing			(int direction);
	int			GetFacing			() const;

	void		SetStatus			(int index, bool data);
	bool		GetStatus			(int index) const;

	void		setNumSRs			(int data);
	int			getNumSRs			() const;
	int			getStatRollB		() const;

	void		setPortrait			(int index);
	int			getPortrait			() const;

	bool		SetStartTown		(string NickName, string Map);
	bool		HaveVisitedBefore	(string Map);
	void		SetStartMapName		(string map);
	void		SetStartMapType		(int type);
	int			GetStartMapType		() const;
	string		GetStartTownName	() const;
	string		GetStartMapName		() const;
	string		GetListOfVisited	() const;

	string		GetRaceEnumName		();
	void		AssignRaceViaString	(string Data);
	
	void		SetConditionStatus	(int CS);
	int			GetConditionStatus	() const;
	void		SetActionsStatus	(int AS);
	int			GetActionsStatus	() const;

	void		SetSpeachMsg		(string msg);
	string		GetSpeachMsg		() const;
	void		SetSpeachTimer		(int count);
	int			GetSpeachTimer		() const;
	void		DecSpeachTimer		();
	bool		GetShowSpeach		() const;
	void		SetInTextBox		(bool data);
	bool		GetInTextBox		() const;

	void		SetUI				(int IDnum);
	int			GetUI				() const;

	void		SetAggress			(bool value);
	bool		GetAggress			() const;

	void		SetHP				(int data);
	int			GetHP				() const;
	void		SetCurHP			(int data);
	int			GetCurHP			() const;

	void		SetAC				(int data);
	int			GetAC				() const;

	void		SetHPRoll			(int index, int Level, int value);
	int			GetHPRoll			(int index, int Level);

	List<string>	mapsVisited;

private:
	//Names...
	char	LastName[maxNameLength], FirsName[maxNameLength], MiddName[maxNameLength];

	//Attributes...
	float	aStr, aDex, aCon, aInt, aWis, aCha, aCom;			//(A)djusted values after modifications
	int		sStr, sExStr, sDex, sCon, sInt, sWis, sCha, sCom;	//(rS)tarting rStats at creation - limited

	//Other stuff
	int		Sex, Race, Height, Weight, alignMorality, alignLawfulness;
	bool	RaceIsMonster;
	bool	Aggressive;

	//Class and Kits...
	int		numClasses;
	int		avClass[maxNumClasses];								//'Avatar' Class...couldn't use the word 'Class' by itself
	int		classLvl[maxNumClasses];
	int		avKit[maxNumClasses];
	int		avClassXP[maxNumClasses];
	int		avClassHPRolls[maxNumClasses][maxHpRolls];			//Max of 10 levels that are random, after 10th hp is assigned...
	int		ClassShortCutRefIndex;
	int		avCurrentHitPoints;	//injured...
	int		avHitPoints;		//normal not injured...
	int		ArmorClass;

	//Custom Class Variables
	double	CombatValues[cmbtTOTAL_CmbtValues];					//rRequired Basics
	double	TotalMult;											//Multiplier for final experience point tally
	int		SaveAsClass;
	bool	OptionalAbilities[TOTAL_OptVals];					//Optional Abilities
	bool	Restrictions[TOTAL_Restricts];						//Optional rRestrictions

	//Weapon proficiencies...
	int		MaxWeaponSlots;
	int		numWPs;
	int		weaponPros[MAX_WEAPONPRO];

	//Non-weapon Proficiencies...
	int		MaxNWPSlots;
	int		AllocatedNWPs;
	int		nwp[MAX_NWPs];

	//Data File index for more efficient access Software controlled assignment required...
	int		dataIndex;

	//Location information...
	int		worldX;			//World map X coordinate - also value to point at dungeon datafile...
	int		worldY;			//World map Y coordinate - also value to point at dungeon datafile...
	int		worldZ;
	int		dungeonX;
	int		dungeonY;
	int		dungeonZ;
	int		facing;

	//Starting Town Stuff
	string	StartMapName;
	int		MapType;
	string	StartTownName;

	//Used to compare how many times is "tolerable" for rolling dice - M. White 7 April, 2019
	//rSee assignment method for further details...
	int		numStatRolls;

	//Making this an integer for each of display in sprintf()...
	//Actual calculation will involve division by 100 to get percentage - M. White 7 April, 2019
	int		intXP_BonusMod;
	double	dblXP_BonusMod;

	int		PortraitIndex;

	int		ConditionStatus;		//Condition is a variety ranging from "Alive" to "Permanent Dead"
	int		ActionsStatus;			//Action is what they are currently doing

	string	SpeachMsg;
	int		SpeachTimer;
	bool	ShowSpeach;
	bool	InTextBox;

	bitset<maxBitArray> Statuses;

	int		UniqueIdentifier;
};
/*
Alignment Range Values
Lawful  > 66		Good    > 66
Nuetral > 33		Nuetral > 33
Choatic				Evil
*/