From a2b67f879e2073c5b094c9a480bf637c98703001 Mon Sep 17 00:00:00 2001 From: Loek Le Blansch Date: Wed, 11 Dec 2024 18:42:38 +0100 Subject: example working again --- src/example/replay.cpp | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'src/example/replay.cpp') diff --git a/src/example/replay.cpp b/src/example/replay.cpp index 0c4f9b3..67acbd8 100644 --- a/src/example/replay.cpp +++ b/src/example/replay.cpp @@ -33,26 +33,30 @@ class AnimationScript : public Script { class Timeline : public Script { unsigned i = 0; - OptionalRef mgr; + ReplayManager & mgr; recording_t recording; + +public: + Timeline(ReplayManager & mgr) + : mgr(mgr) {} + void update() { - ReplayManager & mgr = this->mgr; switch (i++) { default: break; case 10: - // mgr.record_start(); + mgr.record_start(); Log::logf("start"); break; case 60: - // this->recording = mgr.record_end(); + this->recording = mgr.record_end(); Log::logf("stop"); break; case 70: - // mgr.play(this->recording); + mgr.play(this->recording); Log::logf("play"); break; case 71: - // mgr.release(this->recording); + mgr.release(this->recording); Log::logf("end"); break; case 72: @@ -68,8 +72,8 @@ public: using Scene::Scene; void load_scene() { - Mediator & m = this->mediator; - ComponentManager & mgr = m.component_manager; + Mediator & mediator = this->mediator; + ComponentManager & mgr = mediator.component_manager; GameObject cam = mgr.new_object("cam"); cam.add_component(ivec2{640,480},vec2{3,3}, Camera::Data{ @@ -86,7 +90,7 @@ public: square.add_component().set_script(); GameObject scapegoat = mgr.new_object(""); - scapegoat.add_component().set_script(); + scapegoat.add_component().set_script(mediator.replay_manager); } string get_name() const { return "scene1"; } -- cgit v1.2.3