X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fbattle%2FMonster.h;h=3497c04b4ddd184617604fb9f584c045e84e84b4;hb=80ece5086729d503658ee7f0739a2aad2d5e22e7;hp=232da8fae99bd9f705229bc5684400eb0a49b78d;hpb=8967f42789c619df6e5874f5c6a9ea4b6b6c33db;p=l2e.git diff --git a/src/battle/Monster.h b/src/battle/Monster.h index 232da8f..3497c04 100644 --- a/src/battle/Monster.h +++ b/src/battle/Monster.h @@ -10,15 +10,13 @@ #include "AttackChoice.h" #include "Stats.h" +#include "../common/fwd.h" +#include "../geometry/Vector.h" #include "../graphics/Animation.h" +#include "../graphics/fwd.h" #include -namespace common { class Item; } -namespace graphics { - class Sprite; -} - namespace battle { class Monster { @@ -61,6 +59,9 @@ public: const graphics::Animation *AttackAnimation() const { return attackAnimation; } const graphics::Animation *SpellAnimation() const { return spellAnimation; } + geometry::Vector &Position() { return position; } + const geometry::Vector &Position() const { return position; } + // temporary setters until loader is implemented public: void SetName(const char *n) { name = n; } @@ -80,6 +81,9 @@ public: AttackChoice &GetAttackChoice() { return attackChoice; } const AttackChoice &GetAttackChoice() const { return attackChoice; } + static void CreateTypeDescription(); + static void Construct(void *); + private: const char *name; graphics::Sprite *sprite; @@ -93,17 +97,19 @@ private: graphics::AnimationRunner animation; + geometry::Vector position; + AttackChoice attackChoice; - Uint16 maxHealth, health; - Uint16 maxMana, mana; + int maxHealth, health; + int maxMana, mana; Stats stats; - Uint16 expReward, goldReward; + int expReward, goldReward; - Uint8 level; - Uint8 dropChance; + int level; + int dropChance; };