feat (window): close window on esc
This commit is contained in:
parent
7e1bfc245c
commit
81f38daf23
@ -6,7 +6,7 @@
|
||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2025/04/15 12:22:29 by qmennen #+# #+# */
|
||||
/* Updated: 2025/04/15 16:53:27 by qmennen ### ########.fr */
|
||||
/* Updated: 2025/04/15 17:55:33 by qmennen ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
@ -20,6 +20,7 @@
|
||||
# include "errors.h"
|
||||
# include "game.h"
|
||||
# include "screen.h"
|
||||
# include "keyhandle.h"
|
||||
# include "render.h"
|
||||
|
||||
# define FAILURE 0
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2025/04/15 15:46:16 by qmennen #+# #+# */
|
||||
/* Updated: 2025/04/15 17:21:36 by qmennen ### ########.fr */
|
||||
/* Updated: 2025/04/15 17:58:22 by qmennen ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
|
||||
20
inc/keyhandle.h
Normal file
20
inc/keyhandle.h
Normal file
@ -0,0 +1,20 @@
|
||||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* keyhandle.h :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2025/04/15 17:51:44 by qmennen #+# #+# */
|
||||
/* Updated: 2025/04/15 17:56:00 by qmennen ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#ifndef KEYHANDLE_H
|
||||
# define KEYHANDLE_H
|
||||
|
||||
# include "cub3d.h"
|
||||
|
||||
void keyhandle(mlx_key_data_t keydata, void *param);
|
||||
|
||||
#endif
|
||||
@ -6,7 +6,7 @@
|
||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2025/04/15 15:46:08 by qmennen #+# #+# */
|
||||
/* Updated: 2025/04/15 17:23:29 by qmennen ### ########.fr */
|
||||
/* Updated: 2025/04/15 18:02:09 by qmennen ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
@ -43,8 +43,8 @@ void game_terminate(t_game *game)
|
||||
{
|
||||
if (game->screen)
|
||||
{
|
||||
mlx_close_window(game->screen->mlx);
|
||||
mlx_delete_image(game->screen->mlx, game->screen->img);
|
||||
mlx_close_window(game->screen->mlx);
|
||||
mlx_terminate(game->screen->mlx);
|
||||
free(game->screen);
|
||||
}
|
||||
@ -53,4 +53,5 @@ void game_terminate(t_game *game)
|
||||
if (game->map)
|
||||
free(game->map);
|
||||
free(game);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
||||
22
src/keyhandle.c
Normal file
22
src/keyhandle.c
Normal file
@ -0,0 +1,22 @@
|
||||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* keyhandle.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2025/04/15 17:51:26 by qmennen #+# #+# */
|
||||
/* Updated: 2025/04/15 17:56:24 by qmennen ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include "keyhandle.h"
|
||||
|
||||
void keyhandle(mlx_key_data_t keydata, void *param)
|
||||
{
|
||||
t_game *game;
|
||||
|
||||
game = (t_game *)param;
|
||||
if (keydata.key == MLX_KEY_ESCAPE)
|
||||
game_terminate(game);
|
||||
}
|
||||
@ -6,10 +6,11 @@
|
||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2025/04/15 16:01:29 by qmennen #+# #+# */
|
||||
/* Updated: 2025/04/15 17:23:45 by qmennen ### ########.fr */
|
||||
/* Updated: 2025/04/15 18:02:44 by qmennen ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include "MLX42.h"
|
||||
# include "cub3d.h"
|
||||
|
||||
int main(void)
|
||||
@ -22,6 +23,7 @@ int main(void)
|
||||
return (EXIT_FAILURE);
|
||||
}
|
||||
screen_center(game->screen);
|
||||
mlx_key_hook(game->screen->mlx, keyhandle, game);
|
||||
mlx_loop_hook(game->screen->mlx, game_loop, game);
|
||||
mlx_loop(game->screen->mlx);
|
||||
game_terminate(game);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user