diff options
Diffstat (limited to 'mwe/gameloop/src')
-rw-r--r-- | mwe/gameloop/src/gameObject.cpp | 11 | ||||
-rw-r--r-- | mwe/gameloop/src/loopManager.cpp | 29 | ||||
-rw-r--r-- | mwe/gameloop/src/timer.cpp | 3 | ||||
-rw-r--r-- | mwe/gameloop/src/window.cpp | 5 |
4 files changed, 28 insertions, 20 deletions
diff --git a/mwe/gameloop/src/gameObject.cpp b/mwe/gameloop/src/gameObject.cpp index 78217c4..809e25f 100644 --- a/mwe/gameloop/src/gameObject.cpp +++ b/mwe/gameloop/src/gameObject.cpp @@ -24,7 +24,12 @@ void GameObject::setVelX(float value) { velX = value; } void GameObject::setVelY(float value) { velY = value; } -GameObject::GameObject(std::string name, float x, float y, float width, - float height, float velX, float velY) - : name(name), x(x), y(y), width(width), height(height), velX(velX), +GameObject::GameObject(std::string name, float x, float y, float width, float height, + float velX, float velY) + : name(name), + x(x), + y(y), + width(width), + height(height), + velX(velX), velY(velY) {} diff --git a/mwe/gameloop/src/loopManager.cpp b/mwe/gameloop/src/loopManager.cpp index 0392853..fb06995 100644 --- a/mwe/gameloop/src/loopManager.cpp +++ b/mwe/gameloop/src/loopManager.cpp @@ -1,6 +1,12 @@ #include "loopManager.h" #include "timer.h" -LoopManager::LoopManager() {} +LoopManager::LoopManager() { this->window = new WindowManager(); } +LoopManager::~LoopManager() { + for (GameObject * object : this->objectList) { + delete object; + } + delete this->window; +} void LoopManager::processInput() { SDL_Event event; SDL_PollEvent(&event); @@ -12,11 +18,11 @@ void LoopManager::processInput() { if (event.key.keysym.sym == SDLK_ESCAPE) { gameRunning = false; } else if (event.key.keysym.sym == SDLK_i) { - LoopTimer::getInstance().setGameScale( - LoopTimer::getInstance().getGameScale() + 0.1); + LoopTimer::getInstance().setGameScale(LoopTimer::getInstance().getGameScale() + + 0.1); } else if (event.key.keysym.sym == SDLK_k) { - LoopTimer::getInstance().setGameScale( - LoopTimer::getInstance().getGameScale() - 0.1); + LoopTimer::getInstance().setGameScale(LoopTimer::getInstance().getGameScale() + - 0.1); } break; @@ -42,24 +48,23 @@ void LoopManager::loop() { timer.enforceFrameRate(); } - window.destroyWindow(); + window->destroyWindow(); } void LoopManager::setup() { - gameRunning = window.initWindow(); - LoopTimer::getInstance().start(); - LoopTimer::getInstance().setFPS(500); + LoopTimer::getInstance().start(); + LoopTimer::getInstance().setFPS(10); + this->gameRunning = true; for (int i = 1; i < 3; i++) { - GameObject * square - = new GameObject("square2", i * 60, i * 60, 20, 20, 0, 0); + GameObject * square = new GameObject("square2", i * 60, i * 60, 20, 20, 0, 0); objectList.push_back(square); } } void LoopManager::render() { fprintf(stderr, "**********render********** \n"); if (gameRunning) { - window.render(objectList); + window->render(objectList); } } diff --git a/mwe/gameloop/src/timer.cpp b/mwe/gameloop/src/timer.cpp index 97baef6..5ae1564 100644 --- a/mwe/gameloop/src/timer.cpp +++ b/mwe/gameloop/src/timer.cpp @@ -45,8 +45,7 @@ void LoopTimer::enforceFrameRate() { double frameDuration = (currentFrameTime - lastFrameTime) / 1000.0; if (frameDuration < frameTargetTime) { - uint32_t delayTime - = (uint32_t) ((frameTargetTime - frameDuration) * 1000.0); + uint32_t delayTime = (uint32_t) ((frameTargetTime - frameDuration) * 1000.0); SDL_Delay(delayTime); } } diff --git a/mwe/gameloop/src/window.cpp b/mwe/gameloop/src/window.cpp index dd1d98f..8f802e1 100644 --- a/mwe/gameloop/src/window.cpp +++ b/mwe/gameloop/src/window.cpp @@ -36,9 +36,8 @@ bool WindowManager::initWindow() { fprintf(stderr, "Error inititalising SDL.\n"); return false; } - window = SDL_CreateWindow("SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, - SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, - SCREEN_HEIGHT, SDL_WINDOW_SHOWN); + window = SDL_CreateWindow("SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, + SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN); if (!window) { fprintf(stderr, "Error creating SDL Window. \n"); return false; |