// Copyright (c) 2014 Alex Diener. All rights reserved. #ifndef __MainMenuScreen_H__ #define __MainMenuScreen_H__ #ifdef __cplusplus extern "C" { #endif typedef struct MainMenuScreen MainMenuScreen; #include "glbitmapfont/GLBitmapFont.h" #include "inputcontroller/InputController.h" #include "screenmanager/Screen.h" #include "watertowerclassic/GameSession.h" #define MainMenuScreen_structContents(self_type) \ Screen_structContents(self_type) \ \ GameSession * gameSession; \ InputController * inputController; \ GLuint vertexBufferID; \ GLuint indexBufferID; \ GLBitmapFont * bitmapFont; \ unsigned int menuItemIndex; \ GLTexture * backgroundTexture; \ GLTexture * titleTextTexture; \ bool backgrounded; stemobject_struct_definition(MainMenuScreen) MainMenuScreen * MainMenuScreen_create(GameSession * gameSession); bool MainMenuScreen_init(MainMenuScreen * self, GameSession * gameSession); void MainMenuScreen_dispose(MainMenuScreen * self); void MainMenuScreen_activate(MainMenuScreen * self); void MainMenuScreen_deactivate(MainMenuScreen * self); void MainMenuScreen_draw(MainMenuScreen * self); #ifdef __cplusplus } #endif #endif