summaryrefslogtreecommitdiff
path: root/src/init.c
diff options
context:
space:
mode:
authorDominik Kaiser2024-05-09 17:49:54 +0200
committerDominik Kaiser2024-05-09 17:49:54 +0200
commit14ffe0479dc33cb5ed96f85535f84fa91d56c48b (patch)
tree1b052671c87cdd54bef9d6b9e9e8fab39039fc45 /src/init.c
parent8cec16bdb6f980565b29d5b55379e481018753f6 (diff)
downloadso_long-14ffe0479dc33cb5ed96f85535f84fa91d56c48b.tar.gz
so_long-14ffe0479dc33cb5ed96f85535f84fa91d56c48b.zip
Add input to direction handling
Diffstat (limited to 'src/init.c')
-rw-r--r--src/init.c29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/init.c b/src/init.c
index 569bed8..7c9645b 100644
--- a/src/init.c
+++ b/src/init.c
@@ -6,26 +6,39 @@
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/05/09 14:50:09 by dkaiser #+# #+# */
-/* Updated: 2024/05/09 16:13:22 by dkaiser ### ########.fr */
+/* Updated: 2024/05/09 17:48:10 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
#include "mlx.h"
#include "so_long.h"
-static void init_hooks(t_game *game)
-{
- mlx_loop_hook(game->mlx, loop, game);
- /* mlx_key_hook(game->mlx, on_key_down, game); */
- mlx_hook(game->window, 2, 0, on_key_down, game);
- mlx_hook(game->window, 3, 0, on_key_up, game);
-}
+static void init_hooks(t_game *game);
+static void init_player(t_player *player, int x, int y);
int init(t_game *game)
{
game->mlx = mlx_init();
game->window = mlx_new_window(game->mlx, 1920, 1080, "so_long");
// TODO: make size and title dynamic
+ game->input_direction = ZERO;
init_hooks(game);
+ init_player(&game->player, 960, 540);
+ // TODO: make player spawn point dynamic
return (0);
}
+
+static void init_hooks(t_game *game)
+{
+ mlx_loop_hook(game->mlx, loop, game);
+ mlx_hook(game->window, 2, 0, on_key_down, game);
+ mlx_hook(game->window, 3, 0, on_key_up, game);
+}
+
+static void init_player(t_player *player, int x, int y)
+{
+ player->position.x = x;
+ player->position.y = y;
+ player->velocity.x = 0;
+ player->velocity.y = 0;
+}