Better clean up funcs for managers.
This commit is contained in:
@@ -98,3 +98,7 @@ process_events :: proc(game: ^Game) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
event_manager_quit :: proc(game: ^Game) {
|
||||||
|
delete(GLOBAL_EVENTS)
|
||||||
|
}
|
||||||
|
|||||||
+2
-3
@@ -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()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
// ------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user