#ifndef _GAME_STATE_MENU_H_ #define _GAME_STATE_MENU_H_ #include #include #include "../include/GameState.h" #include "../include/SimpleMenu.h" #include "../include/TextScroller.h" class GameStateMenu: public GameState, public JGuiListener { private: TextScroller * scroller; int scrollerSet; JGuiController* mGuiController; SimpleMenu* subMenuController; SimpleMenu* gameTypeMenu; int hasChosenGameType; JQuad * mIcons[10]; JTexture * bgTexture; JQuad * mBg; JQuad * mSplash; JTexture * splashTex; float mCreditsYPos; int currentState; //JMusic * bgMusic; int mVolume; char nbcardsStr[400]; vector langs; vector primitives; int primitivesLoadCounter; DIR *mDip; struct dirent *mDit; char mCurrentSetName[32]; char mCurrentSetFileName[512]; int mReadConf; float timeIndex; float angleMultiplier; float angleW; float yW; void fillScroller(); void setLang(int id); string getLang(string s); void loadLangMenu(); bool langChoices; void runTest(); //!! void listPrimitives(); public: GameStateMenu(GameApp* parent); virtual ~GameStateMenu(); virtual void Create(); virtual void Destroy(); virtual void Start(); virtual void End(); virtual void Update(float dt); virtual void Render(); virtual void ButtonPressed(int controllerId, int controlId); int nextDirectory(const char * root, const char * file); // Retrieves the next directory to have matching file void resetDirectory(); void createUsersFirstDeck(int setId); virtual ostream& toString(ostream& out) const; }; #endif