X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fmenu%2FStatusMenu.h;h=4330b99662219db731291e386a3799a05975c13f;hb=243cb7d922fe888be8d18241de138ad5949de430;hp=465c7c41bc7eb74e78e9934fe2944d4349316bb2;hpb=bba1ac05e8c1854dc61bd737d228d9bc18bbb6ad;p=l2e.git diff --git a/src/menu/StatusMenu.h b/src/menu/StatusMenu.h index 465c7c4..4330b99 100644 --- a/src/menu/StatusMenu.h +++ b/src/menu/StatusMenu.h @@ -10,6 +10,8 @@ #include "fwd.h" #include "../app/State.h" +#include "../common/fwd.h" +#include "../geometry/Vector.h" namespace menu { @@ -17,13 +19,17 @@ class StatusMenu : public app::State { public: - explicit StatusMenu(PartyMenu *parent); + StatusMenu(PartyMenu *parent, int heroIndex); public: virtual void HandleEvents(const app::Input &); virtual void UpdateWorld(float deltaT); virtual void Render(SDL_Surface *); +public: + int Width() const; + int Height() const; + private: virtual void OnEnterState(SDL_Surface *screen); virtual void OnExitState(SDL_Surface *screen); @@ -32,8 +38,16 @@ private: virtual void OnResize(int width, int height); + void NextHero(); + void PreviousHero(); + + void RenderStatus(SDL_Surface *screen, const geometry::Vector &offset) const; + void RenderEquipment(SDL_Surface *screen, const geometry::Vector &offset) const; + void RenderEquipmentLine(const common::Item *, SDL_Surface *screen, const geometry::Vector &position) const; + private: PartyMenu *parent; + int cursor; };