From a92186d2998a89cbe2cb0dc891ccc0f00a32f0c8 Mon Sep 17 00:00:00 2001 From: Matt Mullins Date: Sat, 11 Jul 2009 17:13:42 -0500 Subject: [PATCH] Cleaned up Game declarations. --- Game.cpp | 22 ++++++++++++++++++++++ Game.h | 52 +++++++++++++++++++++++++++++++++++++--------------- 2 files changed, 59 insertions(+), 15 deletions(-) diff --git a/Game.cpp b/Game.cpp index 2221c33..5552bfa 100644 --- a/Game.cpp +++ b/Game.cpp @@ -2,4 +2,26 @@ #include "fns.h" #include +Game::Game() : mCurrentLevel(0), mScreen(0) +{ +} +Game::Game(SDL_Surface* screen) : mCurrentLevel(0), mScreen(screen) +{ +} + +Game::~Game() +{ +} + +Level* Game::getCurrentLevel() { + if (mCurrentLevel < mLevels.size()) { + return mLevels[mCurrentLevel]; + } else { + return NULL; + } +} + +int Game::getLevelIndex() { + return mCurrentLevel; +} diff --git a/Game.h b/Game.h index 48f6a66..e0b9c1c 100644 --- a/Game.h +++ b/Game.h @@ -1,24 +1,46 @@ -#ifndef GAME -#define GAME +#ifndef __GAME_H__ +#define __GAME_H__ + #include "Level.h" + #include #include -using namespace std; +/** + High-level controller for the game + + This class is tasked with the following: + - creating the SDL screen + - loading levels from appropriate locations + - switching levels as appropriate + */ class Game { - public: - Game():mCurrentLevel(0) {} - Game(SDL_Surface *screen):mCurrentLevel(0),screen(screen) {} - ~Game() {} - void addLevel(Level level); - void removeLevel(string levelName); - void loadLevel(string levelName); - int currentLevel(){ return mCurrentLevel; } bool init(); +public: + Game(); + Game(SDL_Surface *screen); + ~Game(); + + /** + Gets the current level being played. + \return current level + */ + Level* getCurrentLevel(); + + /** + Gets the index of the current level being played. + \return index of the current level + */ + int getLevelIndex(); - private: - int mCurrentLevel; - std::vector mLevels; - SDL_Surface *screen; +private: + int mCurrentLevel; /**< current index */ + std::vector mLevels; + SDL_Surface *mScreen; + + void addLevel(Level level); + void removeLevel(std::string levelName); + void loadLevel(std::string levelName); }; + #endif -- 2.11.0