summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/draw.c33
-rw-r--r--src/loop.c20
2 files changed, 40 insertions, 13 deletions
diff --git a/src/draw.c b/src/draw.c
new file mode 100644
index 0000000..759f03f
--- /dev/null
+++ b/src/draw.c
@@ -0,0 +1,33 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* draw.c :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2024/05/09 17:58:23 by dkaiser #+# #+# */
+/* Updated: 2024/05/09 18:05:58 by dkaiser ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#include "mlx.h"
+#include "so_long.h"
+
+int draw(t_game *game)
+{
+ if (game->input_direction & UP)
+ mlx_string_put(game->mlx, game->window, 150, 100, 0x00FFFFFF, "^");
+ if (game->input_direction & DOWN)
+ mlx_string_put(game->mlx, game->window, 150, 200, 0x00FFFFFF, "v");
+ if (game->input_direction & LEFT)
+ mlx_string_put(game->mlx, game->window, 100, 150, 0x00FFFFFF, "<");
+ if (game->input_direction & RIGHT)
+ mlx_string_put(game->mlx, game->window, 200, 150, 0x00FFFFFF, ">");
+ mlx_string_put(game->mlx, game->window, 500, 500, 0x00FFFFFF,
+ ft_itoa(game->player.direction.x));
+ mlx_string_put(game->mlx, game->window, 550, 500, 0x00FFFFFF,
+ ft_itoa(game->player.direction.y));
+
+ mlx_pixel_put(game->mlx, game->window, game->player.position.x, game->player.position.y, 0x00FFFF00);
+ return (0);
+}
diff --git a/src/loop.c b/src/loop.c
index a55360b..89eabba 100644
--- a/src/loop.c
+++ b/src/loop.c
@@ -6,7 +6,7 @@
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/05/09 15:09:24 by dkaiser #+# #+# */
-/* Updated: 2024/05/09 17:48:13 by dkaiser ### ########.fr */
+/* Updated: 2024/05/09 18:03:03 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
@@ -17,21 +17,15 @@
int loop(t_game *game)
{
mlx_clear_window(game->mlx, game->window);
- if (game->input_direction & UP)
- mlx_string_put(game->mlx, game->window, 150, 100, 0x00FFFFFF, "^");
- if (game->input_direction & DOWN)
- mlx_string_put(game->mlx, game->window, 150, 200, 0x00FFFFFF, "v");
- if (game->input_direction & LEFT)
- mlx_string_put(game->mlx, game->window, 100, 150, 0x00FFFFFF, "<");
- if (game->input_direction & RIGHT)
- mlx_string_put(game->mlx, game->window, 200, 150, 0x00FFFFFF, ">");
+
game->player.direction.x = ((game->input_direction & RIGHT) != 0)
- ((game->input_direction & LEFT) != 0);
game->player.direction.y = ((game->input_direction & DOWN) != 0)
- ((game->input_direction & UP) != 0);
- mlx_string_put(game->mlx, game->window, 500, 500, 0x00FFFFFF,
- ft_itoa(game->player.direction.x));
- mlx_string_put(game->mlx, game->window, 550, 500, 0x00FFFFFF,
- ft_itoa(game->player.direction.y));
+
+ game->player.position.x += game->player.direction.x;
+ game->player.position.y += game->player.direction.y;
+
+ draw(game);
return (0);
}