Refactor game_manager_destroy function to accept a generic parameter
This commit is contained in:
parent
7f50960bf7
commit
c784b5e5f7
@ -6,7 +6,7 @@
|
|||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/05/27 13:40:20 by qmennen #+# #+# */
|
/* Created: 2025/05/27 13:40:20 by qmennen #+# #+# */
|
||||||
/* Updated: 2025/06/04 18:52:58 by qmennen ### ########.fr */
|
/* Updated: 2025/06/11 15:00:14 by qmennen ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -20,6 +20,6 @@ void game_manager_display(t_game_manager *manager);
|
|||||||
void game_manager_update(void *param);
|
void game_manager_update(void *param);
|
||||||
void game_manager_select(t_game_manager *manager);
|
void game_manager_select(t_game_manager *manager);
|
||||||
void game_manager_handle_input(t_game_manager *manager);
|
void game_manager_handle_input(t_game_manager *manager);
|
||||||
void game_manager_destroy(t_game_manager *manager);
|
void game_manager_destroy(void *param);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
13
src/main.c
13
src/main.c
@ -1,12 +1,12 @@
|
|||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
/* */
|
/* */
|
||||||
/* :::::::: */
|
/* ::: :::::::: */
|
||||||
/* main.c :+: :+: */
|
/* main.c :+: :+: :+: */
|
||||||
/* +:+ */
|
/* +:+ +:+ +:+ */
|
||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/04/15 16:01:29 by qmennen #+# #+# */
|
/* Created: 2025/04/15 16:01:29 by qmennen #+# #+# */
|
||||||
/* Updated: 2025/06/10 19:13:38 by whaffman ######## odam.nl */
|
/* Updated: 2025/06/11 14:58:56 by qmennen ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -29,6 +29,7 @@ int main(int argc, char **argv)
|
|||||||
manager->active_menu = &manager->menu;
|
manager->active_menu = &manager->menu;
|
||||||
mlx_key_hook(game->screen->mlx, keyhandle, manager);
|
mlx_key_hook(game->screen->mlx, keyhandle, manager);
|
||||||
mlx_loop_hook(game->screen->mlx, game_manager_update, manager);
|
mlx_loop_hook(game->screen->mlx, game_manager_update, manager);
|
||||||
|
mlx_close_hook(game->screen->mlx, game_manager_destroy, manager);
|
||||||
mlx_loop(game->screen->mlx);
|
mlx_loop(game->screen->mlx);
|
||||||
game_manager_destroy(manager);
|
game_manager_destroy(manager);
|
||||||
return (EXIT_SUCCESS);
|
return (EXIT_SUCCESS);
|
||||||
|
|||||||
@ -1,12 +1,12 @@
|
|||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
/* */
|
/* */
|
||||||
/* :::::::: */
|
/* ::: :::::::: */
|
||||||
/* game_manager.c :+: :+: */
|
/* game_manager.c :+: :+: :+: */
|
||||||
/* +:+ */
|
/* +:+ +:+ +:+ */
|
||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/05/27 13:48:18 by qmennen #+# #+# */
|
/* Created: 2025/05/27 13:48:18 by qmennen #+# #+# */
|
||||||
/* Updated: 2025/06/10 20:24:00 by whaffman ######## odam.nl */
|
/* Updated: 2025/06/11 15:00:38 by qmennen ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -51,8 +51,11 @@ void game_manager_update(void *param)
|
|||||||
keyboard_update(manager->game);
|
keyboard_update(manager->game);
|
||||||
}
|
}
|
||||||
|
|
||||||
void game_manager_destroy(t_game_manager *manager)
|
void game_manager_destroy(void *param)
|
||||||
{
|
{
|
||||||
|
t_game_manager *manager;
|
||||||
|
|
||||||
|
manager = (t_game_manager *)param;
|
||||||
if (!manager)
|
if (!manager)
|
||||||
return ;
|
return ;
|
||||||
if (manager->menu)
|
if (manager->menu)
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/05/27 14:31:53 by qmennen #+# #+# */
|
/* Created: 2025/05/27 14:31:53 by qmennen #+# #+# */
|
||||||
/* Updated: 2025/06/11 14:54:39 by qmennen ### ########.fr */
|
/* Updated: 2025/06/11 15:02:35 by qmennen ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -79,7 +79,10 @@ void menu_free(t_menu *menu, t_screen *screen)
|
|||||||
i = 0;
|
i = 0;
|
||||||
if (!menu)
|
if (!menu)
|
||||||
return ;
|
return ;
|
||||||
while ((i++) < menu->num_options)
|
while (i < menu->num_options)
|
||||||
|
{
|
||||||
free(menu->items[i]);
|
free(menu->items[i]);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
free(menu);
|
free(menu);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user