aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/LoopManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/api/LoopManager.cpp')
-rw-r--r--src/crepe/api/LoopManager.cpp26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/crepe/api/LoopManager.cpp b/src/crepe/api/LoopManager.cpp
index 7edf4d1..731cfb7 100644
--- a/src/crepe/api/LoopManager.cpp
+++ b/src/crepe/api/LoopManager.cpp
@@ -1,5 +1,3 @@
-#include "../facade/SDLContext.h"
-
#include "../system/AnimatorSystem.h"
#include "../system/CollisionSystem.h"
#include "../system/ParticleSystem.h"
@@ -8,12 +6,14 @@
#include "../system/ScriptSystem.h"
#include "LoopManager.h"
-#include "LoopTimer.h"
using namespace crepe;
using namespace std;
LoopManager::LoopManager() {
+ this->mediator.component_manager = this->component_manager;
+ this->mediator.scene_manager = this->scene_manager;
+
this->load_system<AnimatorSystem>();
this->load_system<CollisionSystem>();
this->load_system<ParticleSystem>();
@@ -22,9 +22,7 @@ LoopManager::LoopManager() {
this->load_system<ScriptSystem>();
}
-void LoopManager::process_input() {
- SDLContext::get_instance().handle_events(this->game_running);
-}
+void LoopManager::process_input() { this->sdl_context.handle_events(this->game_running); }
void LoopManager::start() {
this->setup();
@@ -35,7 +33,7 @@ void LoopManager::set_running(bool running) { this->game_running = running; }
void LoopManager::fixed_update() {}
void LoopManager::loop() {
- LoopTimer & timer = LoopTimer::get_instance();
+ LoopTimer & timer = this->loop_timer;
timer.start();
while (game_running) {
@@ -55,15 +53,17 @@ void LoopManager::loop() {
}
void LoopManager::setup() {
+ LoopTimer & timer = this->loop_timer;
+
this->game_running = true;
- LoopTimer::get_instance().start();
- LoopTimer::get_instance().set_fps(200);
+ timer.start();
+ timer.set_fps(200);
}
void LoopManager::render() {
- if (this->game_running) {
- this->get_system<RenderSystem>().update();
- }
+ if (!this->game_running) return;
+
+ this->get_system<RenderSystem>().update();
}
-void LoopManager::update() { LoopTimer & timer = LoopTimer::get_instance(); }
+void LoopManager::update() {}