]> git.localhorst.tv Git - l2e.git/blob - src/battle/HeroTag.h
added simple font implementation
[l2e.git] / src / battle / HeroTag.h
1 /*
2  * HeroTag.h
3  *
4  *  Created on: Aug 6, 2012
5  *      Author: holy
6  */
7
8 #ifndef BATTLE_HEROTAG_H_
9 #define BATTLE_HEROTAG_H_
10
11 #include "../geometry/Point.h"
12
13 #include <SDL.h>
14
15 namespace graphics {
16         class Font;
17         class Frame;
18         class Gauge;
19         class Sprite;
20 }
21
22 namespace battle {
23
24 class AttackChoice;
25 class Hero;
26
27 class HeroTag {
28
29 public:
30         enum Alignment {
31                 LEFT,
32                 RIGHT
33         };
34
35 public:
36         HeroTag(const Hero *hero, const AttackChoice *choice, const graphics::Frame *frame, const graphics::Frame *activeFrame, const graphics::Gauge *healthGauge, const graphics::Gauge *manaGauge, const graphics::Gauge *ikariGauge, const graphics::Sprite *sprites, const graphics::Font *font, Alignment align)
37         : hero(hero), choice(choice), frame(frame), activeFrame(activeFrame), healthGauge(healthGauge), manaGauge(manaGauge), ikariGauge(ikariGauge), sprites(sprites), font(font), align(align) { }
38         ~HeroTag() { }
39
40 public:
41         void Render(SDL_Surface *screen, int width, int height, geometry::Point<int> position, bool active) const;
42
43 private:
44         const Hero *hero;
45         const AttackChoice *choice;
46         const graphics::Frame *frame;
47         const graphics::Frame *activeFrame;
48         const graphics::Gauge *healthGauge;
49         const graphics::Gauge *manaGauge;
50         const graphics::Gauge *ikariGauge;
51         const graphics::Sprite *sprites;
52         const graphics::Font *font;
53         Alignment align;
54
55 };
56
57 }
58
59 #endif /* BATTLE_HEROTAG_H_ */