package classes // Adventure class ID constants converted from C++ classes.h const ( // Base classes ClassCommoner = 0 ClassFighter = 1 ClassPriest = 11 ClassMage = 21 ClassScout = 31 // Fighter subclasses ClassWarrior = 2 ClassGuardian = 3 ClassBerserker = 4 ClassBrawler = 5 ClassMonk = 6 ClassBruiser = 7 ClassCrusader = 8 ClassShadowknight = 9 ClassPaladin = 10 // Priest subclasses ClassCleric = 12 ClassTemplar = 13 ClassInquisitor = 14 ClassDruid = 15 ClassWarden = 16 ClassFury = 17 ClassShaman = 18 ClassMystic = 19 ClassDefiler = 20 // Mage subclasses ClassSorcerer = 22 ClassWizard = 23 ClassWarlock = 24 ClassEnchanter = 25 ClassIllusionist = 26 ClassCoercer = 27 ClassSummoner = 28 ClassConjuror = 29 ClassNecromancer = 30 // Scout subclasses ClassRogue = 32 ClassSwashbuckler = 33 ClassBrigand = 34 ClassBard = 35 ClassTroubador = 36 ClassDirge = 37 ClassPredator = 38 ClassRanger = 39 ClassAssassin = 40 ClassAnimalist = 41 ClassBeastlord = 42 // Special classes ClassShaper = 43 ClassChanneler = 44 ) // Tradeskill class ID constants const ( // Base tradeskill classes ClassArtisan = 45 ClassCraftsman = 46 ClassOutfitter = 50 ClassScholar = 54 // Craftsman subclasses ClassProvisioner = 47 ClassWoodworker = 48 ClassCarpenter = 49 // Outfitter subclasses ClassArmorer = 51 ClassWeaponsmith = 52 ClassTailor = 53 // Scholar subclasses ClassJeweler = 55 ClassSage = 56 ClassAlchemist = 57 ) // Class validation constants const ( MaxClassID = 57 MinClassID = 0 DefaultClassID = ClassCommoner ClassicMaxAdventureClass = 40 // Classic adventure classes (0-40) ClassicMaxTradeskillClass = 13 // Classic tradeskill progression (0-13) MaxClasses = 58 // Total number of classes ) // Class type categories const ( ClassTypeAdventure = "adventure" ClassTypeTradeskill = "tradeskill" ClassTypeSpecial = "special" ) // Class name constants for lookup (uppercase keys from C++) const ( ClassNameCommoner = "COMMONER" ClassNameFighter = "FIGHTER" ClassNameWarrior = "WARRIOR" ClassNameGuardian = "GUARDIAN" ClassNameBerserker = "BERSERKER" ClassNameBrawler = "BRAWLER" ClassNameMonk = "MONK" ClassNameBruiser = "BRUISER" ClassNameCrusader = "CRUSADER" ClassNameShadowknight = "SHADOWKNIGHT" ClassNamePaladin = "PALADIN" ClassNamePriest = "PRIEST" ClassNameCleric = "CLERIC" ClassNameTemplar = "TEMPLAR" ClassNameInquisitor = "INQUISITOR" ClassNameDruid = "DRUID" ClassNameWarden = "WARDEN" ClassNameFury = "FURY" ClassNameShaman = "SHAMAN" ClassNameMystic = "MYSTIC" ClassNameDefiler = "DEFILER" ClassNameMage = "MAGE" ClassNameSorcerer = "SORCERER" ClassNameWizard = "WIZARD" ClassNameWarlock = "WARLOCK" ClassNameEnchanter = "ENCHANTER" ClassNameIllusionist = "ILLUSIONIST" ClassNameCoercer = "COERCER" ClassNameSummoner = "SUMMONER" ClassNameConjuror = "CONJUROR" ClassNameNecromancer = "NECROMANCER" ClassNameScout = "SCOUT" ClassNameRogue = "ROGUE" ClassNameSwashbuckler = "SWASHBUCKLER" ClassNameBrigand = "BRIGAND" ClassNameBard = "BARD" ClassNameTroubador = "TROUBADOR" ClassNameDirge = "DIRGE" ClassNamePredator = "PREDATOR" ClassNameRanger = "RANGER" ClassNameAssassin = "ASSASSIN" ClassNameAnimalist = "ANIMALIST" ClassNameBeastlord = "BEASTLORD" ClassNameShaper = "SHAPER" ClassNameChanneler = "CHANNELER" ClassNameArtisan = "ARTISAN" ClassNameCraftsman = "CRAFTSMAN" ClassNameProvisioner = "PROVISIONER" ClassNameWoodworker = "WOODWORKER" ClassNameCarpenter = "CARPENTER" ClassNameOutfitter = "OUTFITTER" ClassNameArmorer = "ARMORER" ClassNameWeaponsmith = "WEAPONSMITH" ClassNameTailor = "TAILOR" ClassNameScholar = "SCHOLAR" ClassNameJeweler = "JEWELER" ClassNameSage = "SAGE" ClassNameAlchemist = "ALCHEMIST" ) // Class display names (proper case) const ( DisplayNameCommoner = "Commoner" DisplayNameFighter = "Fighter" DisplayNameWarrior = "Warrior" DisplayNameGuardian = "Guardian" DisplayNameBerserker = "Berserker" DisplayNameBrawler = "Brawler" DisplayNameMonk = "Monk" DisplayNameBruiser = "Bruiser" DisplayNameCrusader = "Crusader" DisplayNameShadowknight = "Shadowknight" DisplayNamePaladin = "Paladin" DisplayNamePriest = "Priest" DisplayNameCleric = "Cleric" DisplayNameTemplar = "Templar" DisplayNameInquisitor = "Inquisitor" DisplayNameDruid = "Druid" DisplayNameWarden = "Warden" DisplayNameFury = "Fury" DisplayNameShaman = "Shaman" DisplayNameMystic = "Mystic" DisplayNameDefiler = "Defiler" DisplayNameMage = "Mage" DisplayNameSorcerer = "Sorcerer" DisplayNameWizard = "Wizard" DisplayNameWarlock = "Warlock" DisplayNameEnchanter = "Enchanter" DisplayNameIllusionist = "Illusionist" DisplayNameCoercer = "Coercer" DisplayNameSummoner = "Summoner" DisplayNameConjuror = "Conjuror" DisplayNameNecromancer = "Necromancer" DisplayNameScout = "Scout" DisplayNameRogue = "Rogue" DisplayNameSwashbuckler = "Swashbuckler" DisplayNameBrigand = "Brigand" DisplayNameBard = "Bard" DisplayNameTroubador = "Troubador" DisplayNameDirge = "Dirge" DisplayNamePredator = "Predator" DisplayNameRanger = "Ranger" DisplayNameAssassin = "Assassin" DisplayNameAnimalist = "Animalist" DisplayNameBeastlord = "Beastlord" DisplayNameShaper = "Shaper" DisplayNameChanneler = "Channeler" DisplayNameArtisan = "Artisan" DisplayNameCraftsman = "Craftsman" DisplayNameProvisioner = "Provisioner" DisplayNameWoodworker = "Woodworker" DisplayNameCarpenter = "Carpenter" DisplayNameOutfitter = "Outfitter" DisplayNameArmorer = "Armorer" DisplayNameWeaponsmith = "Weaponsmith" DisplayNameTailor = "Tailor" DisplayNameScholar = "Scholar" DisplayNameJeweler = "Jeweler" DisplayNameSage = "Sage" DisplayNameAlchemist = "Alchemist" )