package races

// Race ID constants converted from C++ races.h
const (
	RaceBarbarian = 0
	RaceDarkElf   = 1
	RaceDwarf     = 2
	RaceErudite   = 3
	RaceFroglok   = 4
	RaceGnome     = 5
	RaceHalfElf   = 6
	RaceHalfling  = 7
	RaceHighElf   = 8
	RaceHuman     = 9
	RaceIksar     = 10
	RaceKerra     = 11
	RaceOgre      = 12
	RaceRatonga   = 13
	RaceTroll     = 14
	RaceWoodElf   = 15
	RaceFae       = 16
	RaceArasai    = 17
	RaceSarnak    = 18
	RaceVampire   = 19
	RaceAerakyn   = 20
)

// Maximum race ID for validation
const (
	MaxRaceID     = 20
	MinRaceID     = 0
	DefaultRaceID = RaceHuman // Default to Human if lookup fails
)

// Race alignment types
const (
	AlignmentGood    = "good"
	AlignmentEvil    = "evil"
	AlignmentNeutral = "neutral"
)

// Race name constants for lookup (uppercase keys from C++)
const (
	RaceNameBarbarian = "BARBARIAN"
	RaceNameDarkElf   = "DARKELF"
	RaceNameDwarf     = "DWARF"
	RaceNameErudite   = "ERUDITE"
	RaceNameFroglok   = "FROGLOK"
	RaceNameGnome     = "GNOME"
	RaceNameHalfElf   = "HALFELF"
	RaceNameHalfling  = "HALFLING"
	RaceNameHighElf   = "HIGHELF"
	RaceNameHuman     = "HUMAN"
	RaceNameIksar     = "IKSAR"
	RaceNameKerra     = "KERRA"
	RaceNameOgre      = "OGRE"
	RaceNameRatonga   = "RATONGA"
	RaceNameTroll     = "TROLL"
	RaceNameWoodElf   = "WOODELF"
	RaceNameFaeLight  = "FAE_LIGHT"
	RaceNameFaeDark   = "FAE_DARK"
	RaceNameSarnak    = "SARNAK"
	RaceNameVampire   = "VAMPIRE"
	RaceNameAerakyn   = "AERAKYN"
)

// Race display names (proper case from C++)
const (
	DisplayNameBarbarian = "Barbarian"
	DisplayNameDarkElf   = "Dark Elf"
	DisplayNameDwarf     = "Dwarf"
	DisplayNameErudite   = "Erudite"
	DisplayNameFroglok   = "Froglok"
	DisplayNameGnome     = "Gnome"
	DisplayNameHalfElf   = "Half Elf"
	DisplayNameHalfling  = "Halfling"
	DisplayNameHighElf   = "High Elf"
	DisplayNameHuman     = "Human"
	DisplayNameIksar     = "Iksar"
	DisplayNameKerra     = "Kerra"
	DisplayNameOgre      = "Ogre"
	DisplayNameRatonga   = "Ratonga"
	DisplayNameTroll     = "Troll"
	DisplayNameWoodElf   = "Wood Elf"
	DisplayNameFae       = "Fae"
	DisplayNameArasai    = "Arasai"
	DisplayNameSarnak    = "Sarnak"
	DisplayNameVampire   = "Vampire"
	DisplayNameAerakyn   = "Aerakyn"
)
