X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fbattle%2Fstates%2FSelectAttackType.h;h=51dd0f478d87f895cdc7a2d9ae5ad977db6e210e;hb=HEAD;hp=b7903a7766c02beae5ff6264841788e2379b8973;hpb=4309d259becd96ead792678257e910c03a6b4a3d;p=l2e.git diff --git a/src/battle/states/SelectAttackType.h b/src/battle/states/SelectAttackType.h index b7903a7..51dd0f4 100644 --- a/src/battle/states/SelectAttackType.h +++ b/src/battle/states/SelectAttackType.h @@ -2,14 +2,21 @@ #define BATTLE_SELECTATTACKTYPE_H_ namespace battle { + class Battle; class BattleState; + class HeroTag; + struct Resources; } -namespace math { +namespace common { + class Item; +} +namespace graphics { template - class Vector; + class Menu; } #include "../../app/State.h" +#include "../../math/Vector.h" namespace battle { @@ -17,14 +24,24 @@ class SelectAttackType : public app::State { public: - explicit SelectAttackType(BattleState *battle) - : battle(battle) { } + SelectAttackType(Battle *battle, BattleState *parent); public: virtual void HandleEvents(const app::Input &); virtual void UpdateWorld(Uint32 deltaT); virtual void Render(SDL_Surface *); +public: + const Resources &Res() const; + graphics::Menu &ItemMenu(); + const graphics::Menu &ItemMenu() const; + const HeroTag &HeroTagAt(int index) const; + const math::Vector &HeroTagPositionAt(int index) const; + + const math::Vector &ScreenOffset() const; + int Width() const; + int Height() const; + private: virtual void OnEnterState(SDL_Surface *screen); virtual void OnExitState(SDL_Surface *screen); @@ -34,10 +51,12 @@ private: virtual void OnResize(int width, int height); private: - void RenderMenu(SDL_Surface *screen, const math::Vector &offset); + void RenderMenu(SDL_Surface *screen); private: - BattleState *battle; + Battle *battle; + BattleState *parent; + math::Vector menuOffset; };