Better clean up funcs for managers.

This commit is contained in:
2026-10-08 07:41:44 +02:00
parent 0f393af931
commit 25bd7a85a1
3 changed files with 14 additions and 4 deletions
+5 -1
View File
@@ -97,4 +97,8 @@ process_events :: proc(game: ^Game) {
} }
} }
} }
} }
event_manager_quit :: proc(game: ^Game) {
delete(GLOBAL_EVENTS)
}
+2 -3
View File
@@ -160,13 +160,12 @@ game_render :: proc(game: ^Game) {
game_quit :: proc(game: ^Game) { game_quit :: proc(game: ^Game) {
audio_manager_quit(&game.audio) audio_manager_quit(&game.audio)
scene_manager_quit(game)
event_manager_quit(game)
rl.UnloadShader(game.crt_shader) rl.UnloadShader(game.crt_shader)
rl.UnloadTexture(game.bg_texture) rl.UnloadTexture(game.bg_texture)
rl.UnloadRenderTexture(game.viewport) rl.UnloadRenderTexture(game.viewport)
delete(GLOBAL_EVENTS)
delete(game.scene_stack)
rl.CloseWindow() rl.CloseWindow()
} }
+7
View File
@@ -101,6 +101,13 @@ scene_render :: proc(scene: ^Scene) {
} }
} }
scene_manager_quit :: proc(game: ^Game) {
for &scene in game.scene_stack {
destroy_scene(&scene)
}
delete(game.scene_stack)
}
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// UI Layout & Styling Constants // UI Layout & Styling Constants
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------