]> git.localhorst.tv Git - l2e.git/blobdiff - src/battle/Hero.h
added type description of Hero
[l2e.git] / src / battle / Hero.h
index 44d0b4d0c3372dc9a4f320965c4cf3f06b757b72..122ee94112a21aac140f95a0187923dd820afef0 100644 (file)
@@ -10,6 +10,7 @@
 
 #include "AttackChoice.h"
 #include "Stats.h"
+#include "../geometry/Vector.h"
 #include "../graphics/Animation.h"
 #include "../graphics/Menu.h"
 
@@ -87,6 +88,9 @@ public:
        const graphics::Animation *AttackAnimation() const { return attackAnimation; }
        const graphics::Animation *SpellAnimation() const { return spellAnimation; }
 
+       geometry::Vector<int> &Position() { return position; }
+       const geometry::Vector<int> &Position() const { return position; }
+
        graphics::Menu<const common::Spell *> &SpellMenu() { return spellMenu; }
        const graphics::Menu<const common::Spell *> &SpellMenu() const { return spellMenu; }
        graphics::Menu<const common::Item *> &IkariMenu() { return ikariMenu; }
@@ -126,6 +130,8 @@ public:
        void SetAttackAnimation(const graphics::Animation *a) { attackAnimation = a; }
        void SetSpellAnimation(const graphics::Animation *a) { spellAnimation = a; }
 
+       static void CreateTypeDescription();
+
 private:
        const char *name;
        graphics::Sprite *sprite;
@@ -143,6 +149,8 @@ private:
 
        graphics::AnimationRunner animation;
 
+       geometry::Vector<int> position;
+
        graphics::Menu<const common::Spell *> spellMenu;
        graphics::Menu<const common::Item *> ikariMenu;
 
@@ -151,13 +159,13 @@ private:
        // TODO: vector does not seem to be a good choice
        std::vector<const common::Spell *> spells;
 
-       Uint16 maxHealth, health;
-       Uint16 maxMana, mana;
+       int maxHealth, health;
+       int maxMana, mana;
 
        Stats stats;
 
-       Uint8 level;
-       Uint8 ip;
+       int level;
+       int ip;
 
 };