]> git.localhorst.tv Git - l2e.git/blob - src/battle/states/VictoryState.h
show battle results interactively
[l2e.git] / src / battle / states / VictoryState.h
1 #ifndef BATTLE_VICTORYSTATE_H_
2 #define BATTLE_VICTORYSTATE_H_
3
4 namespace battle {
5         class Battle;
6         class BattleState;
7 }
8
9 #include "../../app/State.h"
10 #include "../../math/Vector.h"
11
12 #include <string>
13 #include <vector>
14
15 namespace battle {
16
17 class VictoryState
18 : public app::State {
19
20 public:
21         VictoryState(
22                         Battle *battle,
23                         BattleState *parent)
24         : battle(battle)
25         , parent(parent)
26         , cursor(0) { }
27
28 public:
29         virtual void HandleEvents(const app::Input &);
30         virtual void UpdateWorld(Uint32 deltaT);
31         virtual void Render(SDL_Surface *);
32
33 private:
34         virtual void OnEnterState(SDL_Surface *screen);
35         virtual void OnExitState(SDL_Surface *screen);
36         virtual void OnResumeState(SDL_Surface *screen);
37         virtual void OnPauseState(SDL_Surface *screen);
38
39         virtual void OnResize(int width, int height);
40
41 private:
42         void LoadResults();
43         void RenderFrame(SDL_Surface *screen);
44         void RenderLines(SDL_Surface *screen);
45
46 private:
47         Battle *battle;
48         BattleState *parent;
49         app::Timer<Uint32> timer;
50         std::vector<std::string> lines;
51         math::Vector<int> framePosition;
52         math::Vector<int> frameSize;
53         math::Vector<int> textPosition;
54         int cursor;
55
56 };
57
58 }
59
60 #endif