X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fbattle%2FBattleState.h;h=cff0e43b01a0a53d9e75111dd60c39e9fe8b134f;hb=eb2ad5ffd08128d31af32f3929a3295fcfa251e9;hp=525889591d5847e8088e0c5753d28f67e6d7cfc6;hpb=a3ba4dc677ad7c92eeb78b20b642241563605c9d;p=l2e.git diff --git a/src/battle/BattleState.h b/src/battle/BattleState.h index 5258895..cff0e43 100644 --- a/src/battle/BattleState.h +++ b/src/battle/BattleState.h @@ -1,7 +1,18 @@ #ifndef BATTLE_BATTLESTATE_H_ #define BATTLE_BATTLESTATE_H_ -#include "fwd.h" +namespace battle { + class PartyLayout; +} +namespace common { + class Item; + struct GameConfig; +} +namespace math { + template + class Vector; +} + #include "AttackTypeMenu.h" #include "Capsule.h" #include "Hero.h" @@ -10,14 +21,10 @@ #include "MoveMenu.h" #include "Resources.h" #include "SmallHeroTag.h" -#include "../app/fwd.h" #include "../app/State.h" #include "../common/GameConfig.h" -#include "../common/fwd.h" #include "../common/Stats.h" -#include "../math/Vector.h" #include "../graphics/Animation.h" -#include "../graphics/fwd.h" #include "../graphics/Menu.h" #include @@ -52,7 +59,7 @@ public: public: virtual void HandleEvents(const app::Input &); - virtual void UpdateWorld(float deltaT); + virtual void UpdateWorld(Uint32 deltaT); virtual void Render(SDL_Surface *); public: @@ -122,21 +129,17 @@ public: bool Defeat() const; public: - math::Vector CalculateScreenOffset(SDL_Surface *screen) const { - return math::Vector( - (screen->w - background->w) / 2, - (screen->h - background->h) / 2); - } + const math::Vector &ScreenOffset() const { return offset; } int Width() const { return background->w; } int Height() const { return background->h; } math::Vector Size() const { return math::Vector(Width(), Height()); } - void RenderBackground(SDL_Surface *screen, const math::Vector &offset); - void RenderMonsters(SDL_Surface *screen, const math::Vector &offset); - void RenderHeroes(SDL_Surface *screen, const math::Vector &offset); - void RenderCapsule(SDL_Surface *screen, const math::Vector &offset); - void RenderHeroTags(SDL_Surface *screen, const math::Vector &offset); - void RenderSmallHeroTags(SDL_Surface *screen, const math::Vector &offset); + void RenderBackground(SDL_Surface *screen); + void RenderMonsters(SDL_Surface *screen); + void RenderHeroes(SDL_Surface *screen); + void RenderCapsule(SDL_Surface *screen); + void RenderHeroTags(SDL_Surface *screen); + void RenderSmallHeroTags(SDL_Surface *screen); private: virtual void OnEnterState(SDL_Surface *screen); @@ -170,6 +173,9 @@ private: SmallHeroTag smallHeroTags[4]; math::Vector heroTagPositions[4]; math::Vector smallHeroTagPositions[4]; + + math::Vector offset; + Capsule capsule; int numHeroes; int activeHero; @@ -182,4 +188,4 @@ private: } -#endif /* BATTLE_BATTLESTATE_H_ */ +#endif