From 9874bef76800ddbb183108ee67ea67652c6bcf1c Mon Sep 17 00:00:00 2001 From: Taha Belkhiri <belkhiri.taha53@gmail.com> Date: Tue, 21 Jun 2022 21:48:43 +0200 Subject: [PATCH] ajout d'une map 20x20, et affichage de l'herbe et des arbres --- travail_de_groupe/chef_oeuvre/Res/grass.png | Bin 0 -> 313 bytes travail_de_groupe/chef_oeuvre/Res/tree.png | Bin 0 -> 1133 bytes travail_de_groupe/chef_oeuvre/map.txt | 20 ++++++++ travail_de_groupe/chef_oeuvre/run | Bin 17592 -> 18368 bytes .../chef_oeuvre/src/gest_event.c | 2 +- travail_de_groupe/chef_oeuvre/src/main.c | 1 + travail_de_groupe/chef_oeuvre/src/main.h | 1 + travail_de_groupe/chef_oeuvre/src/map.c | 19 ++++++++ travail_de_groupe/chef_oeuvre/src/map.h | 14 ++++++ travail_de_groupe/chef_oeuvre/src/render.c | 44 +++++++++++++++++- travail_de_groupe/chef_oeuvre/src/render.h | 1 + 11 files changed, 99 insertions(+), 3 deletions(-) create mode 100755 travail_de_groupe/chef_oeuvre/Res/grass.png create mode 100755 travail_de_groupe/chef_oeuvre/Res/tree.png create mode 100644 travail_de_groupe/chef_oeuvre/map.txt create mode 100644 travail_de_groupe/chef_oeuvre/src/map.c create mode 100644 travail_de_groupe/chef_oeuvre/src/map.h diff --git a/travail_de_groupe/chef_oeuvre/Res/grass.png b/travail_de_groupe/chef_oeuvre/Res/grass.png new file mode 100755 index 0000000000000000000000000000000000000000..3f95575121fe0814df1dd404a32a9984de7be841 GIT binary patch literal 313 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I7G?$phQ^Te;|vT8jKx9jP7LeL$-HD>U|>mi z^mSxl*x1kgCy|wbfk8CDC&YDf+gj}io5dIWrfrVxj|&T}4J-@v;b^O6U|?Y2Ebxdd zW?<ku48n}Z^H-!WFfgq3ba4#PI6rsNLB2x@JZ<&D@(HtVzKed!m~;5<j2E>JxOEKo z{8v8V(7M+A^wPfyx⩔ID9hBW4Kep_>HG!cgQy$4sYJJhJEk7Y|a_4DQA^<t$0u5 z!J3BFC&4owD<0|Cudr(qQ<00$nKt2w^~)qKPmxnfFVD>`+RC${dXJl59$VQCx#?>( zo4q?0`CaX{Z}3`m>YeoMZR?J_efpa5t^10$HP;r1Ee%^aZSP+`-h1x0Da?wiEM|ec N<LT<>vd$@?2>^P#d1n9s literal 0 HcmV?d00001 diff --git a/travail_de_groupe/chef_oeuvre/Res/tree.png b/travail_de_groupe/chef_oeuvre/Res/tree.png new file mode 100755 index 0000000000000000000000000000000000000000..4d92c05b4af9e8bdf2c0d855326784b6eebcc846 GIT binary patch literal 1133 zcmeAS@N?(olHy`uVBq!ia0y~yU{GLSU@+idV_;w?SW}VDz`(#*9OUlAu<o49O9lo8 zmUKs7M+SzC{oH>NSs54@I14-?iy0XB4ude`@%$Aj3=Awxo-U3d5$<beoXz(Q6gleu zda>%hOH(w24k|C{YUxlgR4_C&oG?RT#*A4rC1=k3Db2&nGs8pTm4j0N@4^li*^Cw? zyT$LU_P&lRzh8T9uhjl0U*?_Pd+p})J=ed-`3qc=mwPGF|J*h5LvmJ8+{Zs*Q(Rqt zZYn6y$g%sicg4S_pN}+d5<4{M+}llNr#DO2F6?N`y8onkrM&B#e~avbr_5iU*ZcPv z!wLz8qeq?|WfopGeNBwqG`-s~oOLy?XZ_go>q&0SA(msg`;98|Lx22vr@Ts=>tlqX zDf0pYL*p%({x@gcm1Py_s!TpGYft67OyBj}Yr-0KY|rNY6`U+K!=k8=yKjNh*@@<y zTSS$1RUb`TG>NfmyJ&RzgK(W~>l_50UfDQ(>Y7RG7`5jaJ>;xB)YZE(^4&6~x!>HX zpB#z1KQI1T%@@%_$tz-=W_*bAa&ZkRO)ySPHsZd>AZ??6wt@GE6-%!D?OXmP%i_+= zV5|Pu#kP5ooYnEP)(o?%?{h6<1&=3bzgqZr#paCJH)eGGc4Jx78B#Dw$m8qe42Sba zxbq(NWwa?-8uqSsf1B3O$jKVH{YA`z&$&9@{O=m}Ih)41OyXKqyw|ddapKP?HiLuv z(o6#`_jSxYJfo~Rmbr@GCL|)5XUpAV32*rv_Pms^Su;_lBh#4s>@7i)RHh2+oLi<F z-DUI>Bl}-O8>($P+vfi2&P{p!hs$54Z(Mj`sZ?N&^pj^5rD;}jjp<5Ti`hOjWzB#3 z=_~I>hlu{2ANeYrSaQD|H0U~aF{0|^)LD#+4mMsZe&Q1`;b#WJ{J)%5A1&n!Vpl5M zdN288-ChZsZ(eL)^j<LO*Ur<N@xXHX()1rs4xTzaAtS6r-C(Aa_rc!8xp_igrp3?H zTEXB@(8Vm>vgDWK`95dsI+erWhBf>uWsT2eRs_mk|7!X1QFW64b%uFaPL=<EcuL&Z zwl!y~^7gjK_Qnd%z=Oif-#i2|*4@}DHGkGee#u*wFXB8t=u4iMdF(xp2)ihA%8vqd zsY?5=irYL-v0R=jBqtFgIREi>wXCXjj1IyIsVeFxOf3s1m@wq1nHVf=FkkK|lfo+? z;TXV{(^Oo1Nag2wk4T#f^4D@BW4FyZ7_%nRS)18f>@1sefLOQe<5_B(G_4B%{WvrC zVrM~0Zv0K*Lx<P@c&gXSb-(7b?VG#zIm7j0{(iT1_{jacJ^A;g8+SKk&;0L~xzqly z;T+kUvag@JAK$EYN4cRQ@^Ai<q_p=8bCTI_*jjAaC(K=z;V6Hc@mj%mODTOtCZF0@ z@0W!HI<gjTT;?gWgY8YF;)SgSzpV{7KRjr7X6vJs))V%$D3s>uACtRk#PqRO`S$6s wsg`@WrtFM6HOC+`)gja9vfCGZ#XpR%cTRE)y{u-(z`(%Z>FVdQ&MBb@01jLO-2eap literal 0 HcmV?d00001 diff --git a/travail_de_groupe/chef_oeuvre/map.txt b/travail_de_groupe/chef_oeuvre/map.txt new file mode 100644 index 0000000..b0f5850 --- /dev/null +++ b/travail_de_groupe/chef_oeuvre/map.txt @@ -0,0 +1,20 @@ +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 \ No newline at end of file diff --git a/travail_de_groupe/chef_oeuvre/run b/travail_de_groupe/chef_oeuvre/run index 554b566ca5360f14ce06a413e140f4a4e9f01449..361f55c337fa28a4b4ba31286731add205f453ce 100755 GIT binary patch literal 18368 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 MgK(tKG@x-A0IB20tN;K2 delta 4273 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 diff --git a/travail_de_groupe/chef_oeuvre/src/gest_event.c b/travail_de_groupe/chef_oeuvre/src/gest_event.c index d57aab5..aefb655 100644 --- a/travail_de_groupe/chef_oeuvre/src/gest_event.c +++ b/travail_de_groupe/chef_oeuvre/src/gest_event.c @@ -34,7 +34,7 @@ void *EventLoop(void *arg){ while(running){ switch(game_state){ case MENU : gestMenu();break; - //case GAME : gestGame();break; + case GAME : gestMenu();break; default:printf("game state fault");break; } } diff --git a/travail_de_groupe/chef_oeuvre/src/main.c b/travail_de_groupe/chef_oeuvre/src/main.c index 8667568..50d977d 100644 --- a/travail_de_groupe/chef_oeuvre/src/main.c +++ b/travail_de_groupe/chef_oeuvre/src/main.c @@ -7,6 +7,7 @@ int game_state; int main(){ running = 1; game_state = GAME; + readMapFromFile("map.txt"); MainLoop(); diff --git a/travail_de_groupe/chef_oeuvre/src/main.h b/travail_de_groupe/chef_oeuvre/src/main.h index eb08e38..884eef4 100644 --- a/travail_de_groupe/chef_oeuvre/src/main.h +++ b/travail_de_groupe/chef_oeuvre/src/main.h @@ -16,6 +16,7 @@ #include "render.h" #include "gest_event.h" +#include "map.h" #define MENU 0 diff --git a/travail_de_groupe/chef_oeuvre/src/map.c b/travail_de_groupe/chef_oeuvre/src/map.c new file mode 100644 index 0000000..120461b --- /dev/null +++ b/travail_de_groupe/chef_oeuvre/src/map.c @@ -0,0 +1,19 @@ +#include "map.h" + +int map[MAPSIZE][MAPSIZE]; + +void readMapFromFile(char * filename){ + FILE * fp; + int i, j; + fp = fopen(filename, "r"); + if(fp == NULL){ + printf("Error opening file\n"); + exit(1); + } + for(i = 0; i < MAPSIZE; i++){ + for(j = 0; j < MAPSIZE; j++){ + fscanf(fp, "%d", &map[i][j]); + } + } + fclose(fp); +} \ No newline at end of file diff --git a/travail_de_groupe/chef_oeuvre/src/map.h b/travail_de_groupe/chef_oeuvre/src/map.h new file mode 100644 index 0000000..f6b0c73 --- /dev/null +++ b/travail_de_groupe/chef_oeuvre/src/map.h @@ -0,0 +1,14 @@ +#ifndef MAP_HEADER_ +#define MAP_HEADER_ + +#include "main.h" + +#define MAPSIZE 20 + + + +extern int map[MAPSIZE][MAPSIZE]; + +void readMapFromFile(char * filename); + +#endif \ No newline at end of file diff --git a/travail_de_groupe/chef_oeuvre/src/render.c b/travail_de_groupe/chef_oeuvre/src/render.c index b0f7d94..3479a3f 100644 --- a/travail_de_groupe/chef_oeuvre/src/render.c +++ b/travail_de_groupe/chef_oeuvre/src/render.c @@ -4,9 +4,15 @@ SDL_Window *window; SDL_Renderer *renderer; TTF_Font *RobotoFont; +SDL_DisplayMode ScreenDimension; + +SDL_Surface * grassSurface; +SDL_Texture * grassTexture; + +SDL_Surface * treeSurface; +SDL_Texture * treeTexture; void CreateWindow(){ - SDL_DisplayMode ScreenDimension; if (SDL_Init(SDL_INIT_VIDEO) != 0){ printf("Couldn't create window."); @@ -38,10 +44,44 @@ void CreateWindow(){ } +void drawMap(){ + int i, j; + SDL_Rect rect; + rect.h = CELLSIZE; + rect.w = CELLSIZE; + rect.x = (ScreenDimension.w - (MAPSIZE * CELLSIZE)) / 2; // centers the drawing + rect.y = 0; + for(i = 0; i < MAPSIZE; i++){ + for(j = 0; j < MAPSIZE; j++){ + SDL_RenderCopy(renderer, grassTexture, NULL, &rect); + if(map[i][j] == 1){ + SDL_RenderCopy(renderer, treeTexture, NULL, &rect); + } + rect.x += CELLSIZE; + } + rect.x = (ScreenDimension.w - (MAPSIZE * CELLSIZE)) / 2; + rect.y += CELLSIZE; + } +} + +void drawGame(){ + SDL_RenderClear(renderer); + drawMap(); + SDL_RenderPresent(renderer); +} void MainLoop(){ CreateWindow(); + grassSurface = IMG_Load("Res/grass.png"); + grassTexture = SDL_CreateTextureFromSurface(renderer, grassSurface); + + treeSurface = IMG_Load("Res/tree.png"); + treeTexture = SDL_CreateTextureFromSurface(renderer, treeSurface); + + SDL_FreeSurface(grassSurface); + SDL_FreeSurface(treeSurface); + unsigned int a = SDL_GetTicks(); unsigned int b = SDL_GetTicks(); double delta = 0; @@ -62,7 +102,7 @@ void MainLoop(){ //Menu(); break; case GAME: - //Game(); + drawGame(); break; } } diff --git a/travail_de_groupe/chef_oeuvre/src/render.h b/travail_de_groupe/chef_oeuvre/src/render.h index 75f94e3..4a44e61 100644 --- a/travail_de_groupe/chef_oeuvre/src/render.h +++ b/travail_de_groupe/chef_oeuvre/src/render.h @@ -5,6 +5,7 @@ #include "gest_event.h" #define FPS_TO_GET 60 +#define CELLSIZE (ScreenDimension.h / MAPSIZE) extern SDL_Window *window; extern SDL_Renderer *renderer; -- GitLab