From e52855dfbda7b4838f6bba09ab31f31518511578 Mon Sep 17 00:00:00 2001 From: En Yi Date: Sun, 30 Jun 2024 22:19:03 +0800 Subject: [PATCH] Fix incorrect check for scene active bit --- engine/engine.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/engine/engine.c b/engine/engine.c index a788db8..8be7a07 100644 --- a/engine/engine.c +++ b/engine/engine.c @@ -190,6 +190,8 @@ void free_scene(Scene_t* scene) inline void update_scene(Scene_t* scene, float delta_time) { + if ((scene->state & SCENE_ACTIVE_BIT) == 0) return; + scene->delta_time = delta_time * scene->time_scale; system_func_t sys; sc_array_foreach(&scene->systems, sys) @@ -264,8 +266,6 @@ void update_curr_scene(GameEngine_t* engine) { Scene_t* scene = sc_queue_del_first(&engine->scene_stack); - if ((scene->state & SCENE_ACTIVE_BIT) == 0) continue; - update_scene(scene, delta_time); if (scene->child_scene.next != NULL)