From c0a0d33aed32d3e0862aacb5d6b5fcf17c863c50 Mon Sep 17 00:00:00 2001 From: Etienne Rey-bethbeder Date: Wed, 4 Jan 2023 18:20:55 +0100 Subject: [PATCH] avancement --- Makefile | 4 +-- games/enemy.c | 72 ++++++++++++++++++++++++++++++++++++++++--------- games/enemy.o | Bin 0 -> 6696 bytes games/init.c | 13 ++++----- games/init.o | Bin 12704 -> 13008 bytes games/render.c | 2 +- so_long | Bin 88120 -> 90072 bytes so_long.h | 6 ++++- 8 files changed, 75 insertions(+), 22 deletions(-) create mode 100644 games/enemy.o diff --git a/Makefile b/Makefile index c489bd3..f5484ed 100644 --- a/Makefile +++ b/Makefile @@ -6,12 +6,12 @@ # By: erey-bet +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2022/09/27 04:19:30 by erey-bet #+# #+# # -# Updated: 2022/12/12 17:21:15 by erey-bet ### ########.fr # +# Updated: 2023/01/04 14:07:03 by erey-bet ### ########.fr # # # # **************************************************************************** # GNL = get_next_line/get_next_line.c get_next_line/get_next_line_utils.c -SRCS = games/init.c games/map.c games/player.c games/position.c games/quit.c games/render.c ${GNL} +SRCS = games/init.c games/map.c games/player.c games/enemy.c games/position.c games/quit.c games/render.c ${GNL} OBJS = ${SRCS:.c=.o} LIBS = libft/libft.a minilibx-linux/libmlx.a CC = clang diff --git a/games/enemy.c b/games/enemy.c index b8deef8..90deaa7 100644 --- a/games/enemy.c +++ b/games/enemy.c @@ -1,30 +1,78 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* enemy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: erey-bet +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/01/04 14:08:08 by erey-bet #+# #+# */ +/* Updated: 2023/01/04 17:04:14 by erey-bet ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "../so_long.h" + void distance_player(char **map, int x, int y, int nbr) { map[x][y] = nbr + '0'; if (map[x][y + 1] != '1' && map[x][y + 1] == '0') - distance_player(map, x, y + 1, nbr + 1) + distance_player(map, x, y + 1, nbr + 1); if (map[x + 1][y] != '1' && map[x + 1][y] == '0') - distance_player(map, x + 1, y, nbr + 1) + distance_player(map, x + 1, y, nbr + 1); if (map[x - 1][y] != '1' && map[x + 1][y] == '0') - distance_player(map, x - 1, y, nbr + 1) + distance_player(map, x - 1, y, nbr + 1); if (map[x][y - 1] != '1' && map[x][y - 1] == '0') - distance_player(map, x, y - 1, nbr + 1) + distance_player(map, x, y - 1, nbr + 1); } t_xy path_finding(t_data *data, int x, int y) { t_xy new_pos; - char **map_cpy; - - if (cur.x == ply.x && cur.y == ply.y) - return (0); - map_cpy = ft_strdups(data->map); - distance_player(map_cpy, x, y, 0); - + int i; + char **map; + new_pos.x = x; + new_pos.y = y; + map = ft_strdups(data->map); + distance_player(map, x, y, 0); + i = -1; + if (map[x][y + 1] != '1') + { + i = map[x][y + 1]; + new_pos.y = y + 1; + } + if (map[x + 1][y] != '1') + if (i == -1 || map[x + 1][y] < i) + { + i = map[x + 1][y]; + new_pos.x = x + 1; + } + if (map[x - 1][y] != '1' && map[x + 1][y] > '0') + if (i == -1 || map[x - 1][y] < i) + { + i = map[x - 1][y]; + new_pos.x = x - 1; + } + if (map[x][y - 1] != '1' && map[x][y - 1] == '0') + if (i == -1 || map[x][y - 1] < i) + { + i = map[x][y - 1]; + new_pos.y = y - 1; + } + i = 0; + while (map[i]) + free(map[i++]); + free(map); + return (new_pos); } void move_enemy(t_data *data) { - + t_xy pos; + + set_element(data, data->y_ene, data->x_ene, '0'); + pos = path_finding(data, data->x_ene, data->y_ene); + set_element(data, pos.y, pos.x, 'e'); + data->x_ene = pos.x; + data->y_ene = pos.y; } diff --git a/games/enemy.o b/games/enemy.o new file mode 100644 index 0000000000000000000000000000000000000000..418ba0cbdd7990ac836509dd243794dd45b97695 GIT binary patch literal 6696 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 literal 0 HcmV?d00001 diff --git a/games/init.c b/games/init.c index 1f90d48..9b71f77 100644 --- a/games/init.c +++ b/games/init.c @@ -6,7 +6,7 @@ /* By: erey-bet +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/29 18:06:18 by erey-bet #+# #+# */ -/* Updated: 2023/01/02 16:28:52 by erey-bet ### ########.fr */ +/* Updated: 2023/01/04 17:07:05 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -76,13 +76,14 @@ int render(t_data *data) char *str_move; t_xy *pos; - /*if (data->tick >= 20 && data->x_ene != -1) + if (data->tick >= 75000 && data->x_ene != -1 && data->y_ene != -1) { data->tick = 0; move_enemy(data); + draw(data); } - else if (data->x_ene != -1) - data->tick++;*/ + else if (data->x_ene != -1 && data->y_ene != -1) + data->tick++; if (data->update == 1) { if (data->x_ene != -1 && has_element(data->map, '3')) @@ -91,8 +92,8 @@ int render(t_data *data) if (data->x_player != pos->x || data->y_player != pos->y) { set_element(data, pos->x, pos->y, 'e'); - data->x_ene = pos->x; - data->y_ene = pos->y; + data->x_ene = pos->y; + data->y_ene = pos->x; } free(pos); } diff --git a/games/init.o b/games/init.o index 8f57e51d0b40b3a2abda87bbc75dd0a6f456d00e..9c0d9cb65fecf12d318783b09fb40d6f999ccbb4 100644 GIT binary patch delta 2097 zcmZ`)eP|p-6yMp+uDM(;m%Dt-ZNBy{ceylQo4X2;imged<$6%1RNAJZ&9zNT2uY(x zO_k(`iI$jJa=d>O#U_H-R@BNNCQ?E}DfJI6DH1~aM`;wakwODT2%#9?%BDl})5(FVOzGrP@;N*sTG_sj>VpeHp zH=1J@p=@yN{$s(iZYqrG(#?!jyUc7n78{u(W3kw>QOov%|SN(4a`Qv-}4y}{J@5_Wt z!-2w@qqDL{iOVJZa(Rbb6PFv~^7amSS6oI=Qaa^4C9b@QQC!YeTKO#E>}-`OLgjJU z-yzq>WhWEAD!Y`pbSXI@D~hxz9D%{YPWLmiCoUH#J7pj0WgS)vJH%`qUMe~vZVaWb z7WpM|6PA3`@i(?B;@=7o^$h8TDV35L?tg$=7_V~w7e@phf5YQqh?Y>*h1FhGoyCqo z5Y~)IxWSdXxiXjgk2vDz@ryjxxWC2`FOTo?_$MB39l zk#%s-+75HnxaEh<804-%f5=^(3m5OSsDPhmRzR*V-h8>5c3QDfQ za0ONG+BEDtv@{{8(Sjrg_G`2%+lIek9tfK%Y>;{V{_*WwKW}`yhiIHQ9eT8(<#_n$^`O zMk>@oG)UD$8SJ+vdyKK99|-!-;I&FhzU0U}OksSR*UAn7kW;;)qbqKx4q|d`jxuf zA~dU6+6!fr0I{W?V7v@w&0Xi>1YRzg(>R>lg@7Hw4*6g z94PA?Q`w3m*%7JukKG@Z^^ZvjI4ct!{xkN2tvWUZWfS~k!M`d~%TVUI=iLX_cfvh6 z=lePL+#lq<+&u8PG6H?n?mbU%LGpBweS+n#g&h1hc9c9acrdwha2Bhp9%T2oiH66W2ayxw!*%z9&Xyp*b1yRZ`8Dgui&|sS0V%6 z=r(VY?@4c~Z=2V<8Lqax#QuQC;*;vJ+3I{erKP{ah8|_@5nn{MyQr)9DZx+1`)mUC zwdw3U`6Z}eTqFN8DSwhb%e~cr^I|y9v0EZggTESsN)#L z&E&r%rH5~Uquj%eoCo%|HM0+i?B(97;%aUteP2^N(E<&;xhS{-2H;22c<6egw9VdLW~rpCe|M9haHj+ z+dBN6iW;U=6On4NkWTByW{GAbIs(PCK2{WzFW-j4S@({lw@UiIk{*}zI#|ZFaz2#M zoYV0e;Wh-nBAs+me!JYJh|arc!G_8L(d#a{RnXf+)jB(M*4-m$0}OZQ#-NK%3%Z5q zl#8Aa^bMj5F8Z;cOGIzG=y^f!5`7>jzuPDd=WY{F$>^*LEc83z68hadHs0kwLp0|U z_w7_U&8f90sJq(@*Q|$P){oRv3)rdCvxx_2K`3_W#*mBl3p&gx+XHE=Iqs?%5jAtv z;R_etCFnOqe|OP?f;w6(^gsp_fzr&V?XRtNOJ3w>fftPPm#2t;!x z{ykXe4?{7h2gVaN&%z99Yf#DQ>?oYe^{@l5ig7*EFs|`f{VWK*`EK?bpQs+|gjX@S z1eLrV_*Oh~ufZ~Q`G9Mz4{G@y^ifM!cSm8th@Z(f;tq +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/29 18:06:42 by erey-bet #+# #+# */ -/* Updated: 2023/01/02 16:24:06 by erey-bet ### ########.fr */ +/* Updated: 2023/01/04 16:47:26 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/so_long b/so_long index da5160091a8225c8642b5b65edc90f0003f493d8..21fb277a196d5816b2a18a91efb2d51adb3b726c 100755 GIT binary patch delta 15239 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 delta 11795 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 z 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 diff --git a/so_long.h b/so_long.h index 4acb9a4..84c2439 100644 --- a/so_long.h +++ b/so_long.h @@ -6,7 +6,7 @@ /* By: erey-bet +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/12/10 17:59:18 by erey-bet #+# #+# */ -/* Updated: 2022/12/14 16:12:41 by erey-bet ### ########.fr */ +/* Updated: 2023/01/04 14:06:35 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -73,6 +73,10 @@ void draw(t_data *data); void move(t_data *data, int x, int y); void *set_position_player(t_data *data, t_xy *xy); +// Enemy +void move_enemy(t_data *data); + + // Position t_xy *get_position(char **map, char c); int has_element(char **map, char c);