From 54a5edf7c88616fb196121d484925460317a4f11 Mon Sep 17 00:00:00 2001 From: devZoGok Date: Mon, 1 Nov 2021 10:38:36 +0200 Subject: [PATCH] fixed recursion bug --- gameManager.cpp | 43 ++++++++----------------------------------- gameManager.h | 1 + main.cpp | 4 ++++ 3 files changed, 13 insertions(+), 35 deletions(-) diff --git a/gameManager.cpp b/gameManager.cpp index 38b6a1c..afaf6cb 100755 --- a/gameManager.cpp +++ b/gameManager.cpp @@ -12,7 +12,7 @@ using namespace vb01; namespace game{ namespace core{ - GameManager *gameManager = nullptr; + static GameManager *gameManager = nullptr; GameManager* GameManager::getSingleton(){ if(!gameManager) @@ -22,47 +22,20 @@ namespace game{ } GameManager::GameManager() { - Root *root = Root::getSingleton(); - root->start(800, 600, "Battleship", "../vb01"); } GameManager::~GameManager() {} - /* + void GameManager::start() { + Root *root = Root::getSingleton(); + root->start(800, 600, "../../vb01", "Battleship"); + stateManager = new StateManager(); - listener = new EventListener(this); - void GameManager::detachBitmapText(AbstractBitmapText *bitmapText) { - for (int i = 0; i < bitmapTexts.size(); i++) - if (bitmapText == bitmapTexts[i]) { - delete bitmapText; - bitmapTexts.erase(bitmapTexts.begin() + i); - } - } - - void GameManager::detachAllBitmapTexts() { - while (bitmapTexts.size() > 0) { - delete bitmapTexts[bitmapTexts.size() - 1]; - bitmapTexts.pop_back(); - } - } - - void GameManager::detachImage(AbstractImage *image) { - for (int i = 0; i < images.size(); i++) - if (image == images[i]) { - delete image; - images.erase(images.begin() + i); - } - } - - void GameManager::detachAllImages() { - while (images.size() > 0) { - delete images[images.size() - 1]; - images.pop_back(); - } - } - */ + listener = new InputManager(root->getWindow()); + } void GameManager::update() { + Root::getSingleton()->update(); listener->update(); stateManager->update(); diff --git a/gameManager.h b/gameManager.h index db7b476..3bf3f8e 100755 --- a/gameManager.h +++ b/gameManager.h @@ -25,6 +25,7 @@ namespace game{ class GameManager { public: static GameManager* getSingleton(); + void start(); void update(); inline int getWidth(){return width;} inline int getHeight(){return height;} diff --git a/main.cpp b/main.cpp index 8e1fa97..eb4967c 100755 --- a/main.cpp +++ b/main.cpp @@ -7,10 +7,14 @@ using namespace game::core; int main() { GameManager *gameManager = GameManager::getSingleton(); + gameManager->start(); /* GuiAppState *state = new GuiAppState(); gameManager->getStateManager()->attachState(state); makeTitlescreenButtons(state); */ + while(true){ + //gameManager->update(); + } return 0; }