X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fbattle%2FHeroTag.h;h=d3bd9f56b234a5a9a0736d6677acc398422bec36;hb=dc275497c592669dda75645604a9b35d32f63e90;hp=6799e9470fd75a1c6445e3573ff3ce7032886f52;hpb=cccda573516f3bce30efbaba3fc20e4148d3cdc8;p=l2e.git diff --git a/src/battle/HeroTag.h b/src/battle/HeroTag.h index 6799e94..d3bd9f5 100644 --- a/src/battle/HeroTag.h +++ b/src/battle/HeroTag.h @@ -1,49 +1,40 @@ -/* - * HeroTag.h - * - * Created on: Aug 6, 2012 - * Author: holy - */ - #ifndef BATTLE_HEROTAG_H_ #define BATTLE_HEROTAG_H_ -#include "../geometry/Point.h" +namespace battle { + class BattleState; +} +namespace graphics { + class Sprite; +} +namespace math { + template + class Vector; +} #include -namespace graphics { class Frame; } - namespace battle { -class AttackChoice; -class Hero; - class HeroTag { public: - enum Alignment { - LEFT, - RIGHT - }; + HeroTag() : battle(0), index(0) { } + HeroTag(const BattleState *battle, int heroIndex) + : battle(battle), index(heroIndex) { } public: - HeroTag(const Hero *hero, const AttackChoice *choice, const graphics::Frame *frame, const graphics::Frame *activeFrame, Alignment align) - : hero(hero), choice(choice), frame(frame), activeFrame(activeFrame), align(align) { } - ~HeroTag() { } + const graphics::Sprite *HeroSprite() const; + math::Vector HeroOffset() const; -public: - void Render(SDL_Surface *screen, int width, int height, geometry::Point position, bool active) const; + void Render(SDL_Surface *screen, int width, int height, const math::Vector &position, bool active) const; private: - const Hero *hero; - const AttackChoice *choice; - const graphics::Frame *frame; - const graphics::Frame *activeFrame; - Alignment align; + const BattleState *battle; + int index; }; } -#endif /* BATTLE_HEROTAG_H_ */ +#endif