diff options
Diffstat (limited to 'gamestate.cpp')
| -rw-r--r-- | gamestate.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
| diff --git a/gamestate.cpp b/gamestate.cpp index 812f26c..f0de67a 100644 --- a/gamestate.cpp +++ b/gamestate.cpp | |||
| @@ -22,7 +22,7 @@ class GameBoard { | |||
| 22 | class LoadGameState : public State { | 22 | class LoadGameState : public State { |
| 23 | public: | 23 | public: |
| 24 | LoadGameState(int level); | 24 | LoadGameState(int level); |
| 25 | State* operator() (SDL_Renderer* renderer); | 25 | State* operator() (SDL_Window* window, SDL_Renderer* renderer); |
| 26 | 26 | ||
| 27 | private: | 27 | private: |
| 28 | int level; | 28 | int level; |
| @@ -31,7 +31,7 @@ class LoadGameState : public State { | |||
| 31 | class PlayGameState : public State { | 31 | class PlayGameState : public State { |
| 32 | public: | 32 | public: |
| 33 | PlayGameState(int level, GameBoard* board, int playerx, int playery); | 33 | PlayGameState(int level, GameBoard* board, int playerx, int playery); |
| 34 | State* operator() (SDL_Renderer* renderer); | 34 | State* operator() (SDL_Window* window, SDL_Renderer* renderer); |
| 35 | 35 | ||
| 36 | private: | 36 | private: |
| 37 | bool move(int x, int y); | 37 | bool move(int x, int y); |
| @@ -81,7 +81,7 @@ void incrementIfNeighbor(int x, int y, bool temp[WIDTH][HEIGHT], int* tick, int | |||
| 81 | } | 81 | } |
| 82 | } | 82 | } |
| 83 | 83 | ||
| 84 | State* GameState::operator() (SDL_Renderer* renderer) | 84 | State* GameState::operator() (SDL_Window* window, SDL_Renderer* renderer) |
| 85 | { | 85 | { |
| 86 | return new LoadGameState(0); | 86 | return new LoadGameState(0); |
| 87 | } | 87 | } |
| @@ -91,8 +91,12 @@ LoadGameState::LoadGameState(int m_level) | |||
| 91 | level = m_level; | 91 | level = m_level; |
| 92 | } | 92 | } |
| 93 | 93 | ||
| 94 | State* LoadGameState::operator() (SDL_Renderer* renderer) | 94 | State* LoadGameState::operator() (SDL_Window* window, SDL_Renderer* renderer) |
| 95 | { | 95 | { |
| 96 | char* wintitle = new char[50]; | ||
| 97 | sprintf(wintitle, "Maze Of Life - Level %d", level); | ||
| 98 | SDL_SetWindowTitle(window, wintitle); | ||
| 99 | |||
| 96 | // Randomly place the player in a corner | 100 | // Randomly place the player in a corner |
| 97 | int playerx, playery; | 101 | int playerx, playery; |
| 98 | switch (rand()%4) | 102 | switch (rand()%4) |
| @@ -145,7 +149,7 @@ PlayGameState::PlayGameState(int m_level, GameBoard* m_board, int m_playerx, int | |||
| 145 | playery = m_playery; | 149 | playery = m_playery; |
| 146 | } | 150 | } |
| 147 | 151 | ||
| 148 | State* PlayGameState::operator() (SDL_Renderer* renderer) | 152 | State* PlayGameState::operator() (SDL_Window* window, SDL_Renderer* renderer) |
| 149 | { | 153 | { |
| 150 | SDL_Event e; | 154 | SDL_Event e; |
| 151 | 155 | ||
| @@ -216,6 +220,8 @@ State* PlayGameState::operator() (SDL_Renderer* renderer) | |||
| 216 | } | 220 | } |
| 217 | 221 | ||
| 218 | case SDLK_ESCAPE: | 222 | case SDLK_ESCAPE: |
| 223 | SDL_SetWindowTitle(window, ""); | ||
| 224 | |||
| 219 | std::ifstream exists(getDataFile()); | 225 | std::ifstream exists(getDataFile()); |
| 220 | if (exists) | 226 | if (exists) |
| 221 | { | 227 | { |
