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> +#+ +:+ +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/04/15 12:22:29 by qmennen #+# #+# */
|
/* 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 "errors.h"
|
||||||
# include "game.h"
|
# include "game.h"
|
||||||
# include "screen.h"
|
# include "screen.h"
|
||||||
|
# include "keyhandle.h"
|
||||||
# include "render.h"
|
# include "render.h"
|
||||||
|
|
||||||
# define FAILURE 0
|
# define FAILURE 0
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/04/15 15:46:16 by qmennen #+# #+# */
|
/* 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> +#+ +:+ +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2025/04/15 15:46:08 by qmennen #+# #+# */
|
/* 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)
|
if (game->screen)
|
||||||
{
|
{
|
||||||
mlx_close_window(game->screen->mlx);
|
|
||||||
mlx_delete_image(game->screen->mlx, game->screen->img);
|
mlx_delete_image(game->screen->mlx, game->screen->img);
|
||||||
|
mlx_close_window(game->screen->mlx);
|
||||||
mlx_terminate(game->screen->mlx);
|
mlx_terminate(game->screen->mlx);
|
||||||
free(game->screen);
|
free(game->screen);
|
||||||
}
|
}
|
||||||
@ -53,4 +53,5 @@ void game_terminate(t_game *game)
|
|||||||
if (game->map)
|
if (game->map)
|
||||||
free(game->map);
|
free(game->map);
|
||||||
free(game);
|
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> +#+ +:+ +#+ */
|
/* 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/04/15 17:23:45 by qmennen ### ########.fr */
|
/* Updated: 2025/04/15 18:02:44 by qmennen ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#include "MLX42.h"
|
||||||
# include "cub3d.h"
|
# include "cub3d.h"
|
||||||
|
|
||||||
int main(void)
|
int main(void)
|
||||||
@ -22,6 +23,7 @@ int main(void)
|
|||||||
return (EXIT_FAILURE);
|
return (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
screen_center(game->screen);
|
screen_center(game->screen);
|
||||||
|
mlx_key_hook(game->screen->mlx, keyhandle, game);
|
||||||
mlx_loop_hook(game->screen->mlx, game_loop, game);
|
mlx_loop_hook(game->screen->mlx, game_loop, game);
|
||||||
mlx_loop(game->screen->mlx);
|
mlx_loop(game->screen->mlx);
|
||||||
game_terminate(game);
|
game_terminate(game);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user