From 5dde87a23b3c08d2ce9478325f88edf5fa91a766 Mon Sep 17 00:00:00 2001
From: Alfred Burgess <aburgess@ucc.gu.uwa.edu.au>
Date: Thu, 7 Dec 2023 12:55:59 +0800
Subject: [PATCH] Changed Game class to GameEngine

---
 include/game-engine.h | 24 ++++++++++++++++++++++++
 include/main.h        |  1 +
 src/game-engine.cpp   | 17 +++++++++++++++++
 src/main.cpp          |  6 +++++-
 4 files changed, 47 insertions(+), 1 deletion(-)
 create mode 100644 include/game-engine.h
 create mode 100644 src/game-engine.cpp

diff --git a/include/game-engine.h b/include/game-engine.h
new file mode 100644
index 0000000..e66e601
--- /dev/null
+++ b/include/game-engine.h
@@ -0,0 +1,24 @@
+#ifndef __GAME_H__
+#define __GAME_H__
+
+#include "logger.h"
+#include "entity-manager.h"
+
+class GameEngine
+{
+	public:
+		GameEngine();
+		~GameEngine();
+		void init();
+		void update();
+
+	private:
+		EntityManager _entityManager;
+		Logger& _logger;
+
+		// Window* _window;
+
+		// Systems
+};
+
+#endif // __GAME_H__
diff --git a/include/main.h b/include/main.h
index c9347f5..506b94a 100644
--- a/include/main.h
+++ b/include/main.h
@@ -15,6 +15,7 @@ enum GenerationMethod
 #include "world-hex-2d.h"
 #include "world-map-3d.h"
 #include "chunk.h"
+#include "game-engine.h"
 #include "logger.h"
 #include "entities/entity-generic.h"
 #include "maths/maths.h"
diff --git a/src/game-engine.cpp b/src/game-engine.cpp
new file mode 100644
index 0000000..806836f
--- /dev/null
+++ b/src/game-engine.cpp
@@ -0,0 +1,17 @@
+#include "game-engine.h"
+
+
+GameEngine::GameEngine()
+	: _logger( Logger::instance() )
+{
+	this->_logger.info( "Creating GameEngine Object" );
+}
+GameEngine::~GameEngine()
+{
+	this->_logger.info( "Cleaning GameEngine Object" );
+}
+void GameEngine::init(){}
+void GameEngine::update()
+{
+	this->_entityManager.update();
+}
diff --git a/src/main.cpp b/src/main.cpp
index 3325eb5..494c2eb 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -35,6 +35,9 @@ int main() {
 	// List Saves
 	saveManager.list();
 
+
+	GameEngine* game = new GameEngine();
+
 	// Main Loop
 	while( state != Exit )
 	{
@@ -45,7 +48,7 @@ int main() {
 		}
 
 		// Update Entities
-		entityManager.update();
+		game->update();
 		// Process Input
 		// Movement Updates
 		// Collision Updates
@@ -62,6 +65,7 @@ int main() {
 		entities.pop_back();
 		delete entity;
 	}
+	delete game;
 	
 	// Return 
 	logger.info( "Process Ending" );
-- 
GitLab