66 lines
1.9 KiB
C
66 lines
1.9 KiB
C
/* ************************************************************************** */
|
|
/* */
|
|
/* ::: :::::::: */
|
|
/* so_long.c :+: :+: :+: */
|
|
/* +:+ +:+ +:+ */
|
|
/* By: erey-bet <marvin@42.fr> +#+ +:+ +#+ */
|
|
/* +#+#+#+#+#+ +#+ */
|
|
/* Created: 2022/12/09 14:18:18 by erey-bet #+# #+# */
|
|
/* Updated: 2022/12/10 19:19:12 by erey-bet ### ########.fr */
|
|
/* */
|
|
/* ************************************************************************** */
|
|
|
|
#include "so_long.h"
|
|
#include <stdio.h>
|
|
|
|
int quit(void)
|
|
{
|
|
exit(0);
|
|
return (0);
|
|
}
|
|
|
|
int key_hook(int key, t_data *data)
|
|
{
|
|
if (key == K_ESC)
|
|
quit();
|
|
else if (key == K_LEFT)
|
|
data->x_player -= 128;
|
|
else if (key == K_RIGHT)
|
|
data->x_player += 128;
|
|
else if (key == K_UP)
|
|
data->y_player -= 128;
|
|
else if (key == K_DOWN)
|
|
data->y_player += 128;
|
|
return (0);
|
|
}
|
|
|
|
int render(t_data *data)
|
|
{
|
|
int height;
|
|
int width;
|
|
|
|
height = 128;
|
|
width = 128;
|
|
//mlx_destroy_image(data->mlx, data->player);
|
|
data->player = mlx_xpm_file_to_image(data->mlx, "assets/player.xpm", &width, &height);
|
|
mlx_put_image_to_window(data->mlx, data->mlx_win, data->player, data->x_player, data->y_player);
|
|
return (0);
|
|
}
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
t_data data;
|
|
|
|
(void)argc;
|
|
(void)argv;
|
|
data.x_player = 0;
|
|
data.y_player = 0;
|
|
data.mlx = mlx_init();
|
|
data.mlx_win = mlx_new_window(data.mlx, 1000, 1000, "lili meli");
|
|
mlx_hook(data.mlx_win, 17, 0, quit, 0);
|
|
mlx_key_hook(data.mlx_win, key_hook, &data);
|
|
mlx_loop_hook(data.mlx, render, &data);
|
|
mlx_loop(data.mlx);
|
|
return (0);
|
|
}
|