]> git.localhorst.tv Git - l2e.git/blob - src/battle/HeroTag.h
added hero tag labels
[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 Frame;
17         class Gauge;
18         class Sprite;
19 }
20
21 namespace battle {
22
23 class AttackChoice;
24 class Hero;
25
26 class HeroTag {
27
28 public:
29         enum Alignment {
30                 LEFT,
31                 RIGHT
32         };
33
34 public:
35         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, Alignment align)
36         : hero(hero), choice(choice), frame(frame), activeFrame(activeFrame), healthGauge(healthGauge), manaGauge(manaGauge), ikariGauge(ikariGauge), sprites(sprites), align(align) { }
37         ~HeroTag() { }
38
39 public:
40         void Render(SDL_Surface *screen, int width, int height, geometry::Point<int> position, bool active) const;
41
42 private:
43         const Hero *hero;
44         const AttackChoice *choice;
45         const graphics::Frame *frame;
46         const graphics::Frame *activeFrame;
47         const graphics::Gauge *healthGauge;
48         const graphics::Gauge *manaGauge;
49         const graphics::Gauge *ikariGauge;
50         const graphics::Sprite *sprites;
51         Alignment align;
52
53 };
54
55 }
56
57 #endif /* BATTLE_HEROTAG_H_ */