24 static const char* WAR_PERKS[];
25 static const char* MAG_PERKS[];
26 static const char* ROG_PERKS[];
27 static const char* HUN_PERKS[];
29 static const char* CLASS;
34 static void initCommon(
Hero* hero);
35 static void initWarrior(
Hero* hero);
36 static void initMage(
Hero* hero);
37 static void initRogue(
Hero* hero);
38 static void initHuntress(
Hero* hero);
44 std::string
title() {
return _title; }
48 void perks(std::vector<std::string>& out);
57 return _type < c._type;
62 return _type == c._type && _title.compare(c._title) == 0;
76 static const std::string SUBCLASS;
78 HeroSubClass(
const std::string& name,
const std::string& title,
const std::string& desc)
85 subClasses.insert(std::make_pair(name, *
this));
102 std::string
Title() {
return title; }
103 std::string
Desc() {
return desc; }
111 return name.compare(c.name) == 0;
115 return name.compare(c.name) != 0;
static const char * HUNTRESS
Definition heroclass.h:22
std::string title()
Definition heroclass.h:44
bool operator<(const HeroClass &c) const
Definition heroclass.h:55
void perks(std::vector< std::string > &out)
Definition heroclass.cpp:190
void setNull()
Definition heroclass.h:53
Badges::Badge masteryBadge()
Definition heroclass.cpp:226
Type
Definition heroclass.h:12
@ E_MAGE
Definition heroclass.h:14
@ E_ROGUE
Definition heroclass.h:15
@ E_NONE
Definition heroclass.h:17
@ E_HUNTRESS
Definition heroclass.h:16
@ E_WARRIOR
Definition heroclass.h:13
static const char * MAGE
Definition heroclass.h:20
std::string name()
Definition heroclass.cpp:163
static const char * WARRIOR
Definition heroclass.h:19
bool operator==(const HeroClass &c) const
Definition heroclass.h:60
void initHero(Hero *hero)
Definition heroclass.cpp:131
HeroClass(const std::string &title)
Definition heroclass.cpp:101
std::string spritesheet()
Definition heroclass.cpp:168
Type type() const
Definition heroclass.h:45
bool isNull()
Definition heroclass.h:52
static const char * ROGUE
Definition heroclass.h:21
static HeroClass restoreInBundle()
int ordinal()
Definition heroclass.h:51
Definition heroclass.h:70
std::string Desc()
Definition heroclass.h:103
void storeInBundle(Bundle *bundle)
Definition heroclass.cpp:264
std::string Title()
Definition heroclass.h:102
static HeroSubClass restoreInBundle(Bundle *bundle)
Definition heroclass.cpp:269
static HeroSubClass BATTLEMAGE
Definition heroclass.h:95
bool operator==(const HeroSubClass &c) const
Definition heroclass.h:109
static HeroSubClass ASSASSIN
Definition heroclass.h:96
static HeroSubClass BERSERKER
Definition heroclass.h:93
static HeroSubClass WARLOCK
Definition heroclass.h:94
static HeroSubClass SNIPER
Definition heroclass.h:98
static HeroSubClass FREERUNNER
Definition heroclass.h:97
static std::map< std::string, HeroSubClass > subClasses
Definition heroclass.h:89
static HeroSubClass NONE
Definition heroclass.h:91
bool operator!=(const HeroSubClass &c) const
Definition heroclass.h:113
static HeroSubClass WARDEN
Definition heroclass.h:99
static HeroSubClass GLADIATOR
Definition heroclass.h:92