class Hero {
+public:
+ static const int TYPE_ID = 301;
+
public:
Hero();
~Hero() { }
const Stats &GetStats() const { return stats; }
Uint8 Level() const { return level; }
+ int Experience() const { return experience; }
+ int NextLevel() const;
Item *Weapon() { return weapon; }
Item *Armor() { return armor; }
const std::vector<const Spell *> &Spells() const { return spells; }
graphics::Sprite *BattleSprite() { return battleSprite; }
+ const graphics::Sprite *BattleSprite() const { return battleSprite; }
graphics::Animation *MeleeAnimation() { return meleeAnimation; }
graphics::Animation *AttackAnimation() { return attackAnimation; }
graphics::Animation *SpellAnimation() { return spellAnimation; }
Stats stats;
int level;
+ int experience;
+
+ int *levelLadder;
+ int numLevels;
Item *weapon;
Item *armor;