From 04623f82eca36bb234a4cd78b483ddd5705cc5e9 Mon Sep 17 00:00:00 2001 From: Vince <vi.teissier@gmail.com> Date: Thu, 14 Dec 2023 11:25:22 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20du=20timer=20en=20secondes=20r=C3=A9ell?= =?UTF-8?q?es,=20mort=20serpent=20quand=20il=20se=20touche?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- evenement.c | 36 ++++++++++++++++++++++++++++-------- evenement.h | 4 +++- evenement.o | Bin 4432 -> 4976 bytes main.c | 22 +++++++++++++--------- main.h | 2 +- main.o | Bin 5296 -> 5504 bytes prog | Bin 16808 -> 21336 bytes test.c | 26 ++++++++++++++++++++++++++ 8 files changed, 71 insertions(+), 19 deletions(-) create mode 100644 test.c diff --git a/evenement.c b/evenement.c index 867b40f..ec2585c 100644 --- a/evenement.c +++ b/evenement.c @@ -5,18 +5,27 @@ #include <time.h> -void AfficherTimerEtScore(int m,int n,int score) /*Afficher le temps passé et le score*/ +void AfficherTimerEtScore(long unsigned int *score, long unsigned int temps) /*Afficher le temps passé et le score*/ { char buf[100]; - char buff[100]; + char buff[100]; /* Stockage du score et du timer */ couleur j; + + time_t fin_temps; + long int timer; + int minutes,secondes; + fin_temps = time(NULL); /* Gestion du timer et des variables */ + timer = difftime(fin_temps, temps); + secondes = timer % 60; + minutes = timer / 60; + j=CouleurParNom("yellow"); ChoisirCouleurDessin(j); ChoisirEcran(1); CopierZone(2,1,0,0,930,710,0,0); - snprintf(buf,100,"temps : %02d:%02d",m,n); - snprintf(buff,100,"SCORE : %07d",score); + snprintf(buf,100,"TEMPS : %02d:%02d",minutes,secondes); + snprintf(buff,100,"SCORE : %07ld",*score); EcrireTexte(60,650,buf,2); EcrireTexte(600,650,buff,2); CopierZone(1,0,0,0,930,710,0,0); @@ -32,30 +41,40 @@ void InitialiserPastilles(PIXELS *pastilles, PIXELS *serpent, int longueur_serpe srand(time(NULL)); for (i = 0; i < PASTILLES; i++) { - pastilles[i] = gen_pastille(serpent,longueur_serpent); + pastilles[i] = gen_pastille(serpent,pastilles,longueur_serpent); RemplirRectangle(pastilles[i].x,pastilles[i].y,T_PIXEL,T_PIXEL); } } +void MourrirSerpent(PIXELS *serpent, int longueur_serpent) +{ + int i = 0; + for(i=1;i<longueur_serpent;i++) + { + if(serpent[0].x == serpent[i].x && serpent[0].y == serpent[i].y ) + { + FermerGraphique(); + } + } +} + int MangerPastille(PIXELS *serpent, PIXELS* pastilles,unsigned long *score,int longueur_serpent) { couleur r; int i = 0; - int j = 0; r = CouleurParNom("red"); ChoisirCouleurDessin(r); for(i=0;i<PASTILLES;i++) { if(serpent[0].x == pastilles[i].x && serpent[0].y == pastilles[i].y) { - pastilles[i] = gen_pastille(serpent,longueur_serpent); + pastilles[i] = gen_pastille(serpent,pastilles,longueur_serpent); RemplirRectangle(pastilles[i].x,pastilles[i].y,T_PIXEL,T_PIXEL); *score+=5; return 1; } } - return 0; } @@ -97,6 +116,7 @@ void DeplacementSerpent(int direction ,PIXELS *serpent, int longueur) tempY = tempY2; } ChoisirCouleurDessin(g); + RemplirRectangle(serpent[longueur-1].x,serpent[longueur-1].y,T_PIXEL,T_PIXEL); diff --git a/evenement.h b/evenement.h index 2d397c4..5c3e9af 100644 --- a/evenement.h +++ b/evenement.h @@ -9,9 +9,11 @@ void DeplacementSerpent(int direction ,PIXELS *serpent, int longueur); void InitialiserPastilles(PIXELS *pastilles, PIXELS *serpent, int longueur_serpent); -void AfficherTimerEtScore(int m,int n,unsigned long *score); +void AfficherTimerEtScore(long unsigned int *score, long unsigned int temps); int PastilleSurSerpent(PIXELS pastille, PIXELS *serpent, int longueur_serpent); +void MourrirSerpent(PIXELS *serpent, int longueur_serpent); + #endif \ No newline at end of file diff --git a/evenement.o b/evenement.o index 46b8640775ae761572439a919be7cfb182b343a1..b05ca1fc0a59252246456b381883944c4c268368 100644 GIT binary patch literal 4976 zcmb_eZ)_Ar6ra0Z`42q-BMHP@Bw!ohY#T)W7`Rdv#>AFOOB2zUa@=iu3)j1IZx4!6 zP|vE%dfG2U;x~+mBz~2Il1N)9QVnX2#x#Tv)zqZeekfw%X$bYb*_qyS?~WSdOLk}G z_kQoqoA+jB_q6i-Ubo9dgt*8~k{=0_kg1A%Kft;HvWzSx_bML$yM>y+(l;i(U`Nd_ zau24bsd;e<nh3Q#>nedwO(j>;--mYN_@ZX_f@z>xXOTuNdu0AZ%^OVrJFVE*4<s)m zWm$9CeAgCg4$(h<qgl@)I*==;=C^d<!7f@gMa`?!9Hs-K9$JNsn^p}_^K0`g`4?UW z{@MjxFf_Y8NY9qraoX`fD65zgyWvsxVWL>PN5~OU*ZZZLkh)7Bml4v7#+UJR1v!17 z;0w<TdaW!5WSzC=>Gr{(&Kxqor`boDMFifEh)X!Ivt@O&q*`8@ReI>dm|5no7w3a? zTsZ@szGr9rfc0$E3!tBC0T@Ppr4$y>LoFp2p&RVl8s*HxSJ%W=Xr`ITt<>xqp=Ns6 zY`IyGOJy7!jEh?5cLh)D4P^}HoJd;A7(GX`E3e}aOh#ySjoSi;R>KGkhq3hBhMHxC zY}c@r^c00jFK*|{_~H&S%9tzDHRd^WrU#byaxT9dSd9->Gj68GZYcLL6lk!j6G2>t z<+YUi80HcY<~Vf?S!CPQ^hTx+LI_0&0S_=1<%^sFr$F4HjGesD)03ZmRyL{GGGsOk z@(j(9SkAih1H_8i!$?^|XCfWukydnnCO8;v5fVmQ(cKL!XFiARq6|V&hH;jM7X@Z4 zRul#o76tqbQH#)Qu$*;G?<JP_6{1=d@2`c^!;)A~w1C-l6Lw%fqzsJvEn+ISStsBz zl~L(PI*+<CRhZZuB$G{j%(?!4ToL#lFRH+~CW~mUTFPzHU0gA0?uH_aL%5bQ38CU* zfw@B&I{79nASd=bCg&X7b7hd99Ii~{wg_A_w{T<H*ITCRCP~+_<dAIeE_O^W8zwzA zT5w+OoQJ&tcCK^{V+1_HFld{Uw468sX72P;w&QHD0y}d}H}NzWm2o4S%eI<pE;vUg z)L1NWoE%UZg3Z3|zID~Lk?r^*&Gq}66oxz#ix6FnkeJpUHQIGmjT5r3zJ9x}vgL3( zZlrxRHU7>1>P<CiHmo^STkEghT*YC?1BeG6FFg3!*w@%X;9~7Z3_b=-R`S;MY7=pF zdR?oR%wNz0J8BK!_@FGtYg<|7ecN5XbY7X;4HV)72rqDy@9-t`N~X*`fDGII5b8iq z<4bVd#~8r}(ChG^Y{6YD^x&hc(#1F!!zV}pSw1U{g)9zRQ}{-A9&&fOP=jknZK0I0 zEX~H3!f?67XSo1uJv^9Kr#t~bF?>S_d|L^;u>}573B0WYo+yF8Rsw$ya9pogC#x-B z=S%QEErEYt0>_UL`oD#>1Y!FE+8^O5mbWp$k$;eHShi09yT|bla5H0{`y=WxHLiB3 zal;=bb!}~0II8Lgv<_8QjOK7cS4l)`Ycl{K^@(&$P3yss-k9hh_0fcu(sT~)QBx@` zE<h!$hhUIMYO4NXBCe8DJgIAOqm6(@)71lNr=gP8)|3$nA8idskG8gjv>16Vt{GY= zrlnMvBxPu^n3^Ifa1|l#YP>bcG18=VBx9Q1q=t=9ygjCphD2Hizs;(igoTj3st)n* z(?iLq_DUMmz{<NMd(>ns6lQA{7KGH=X<_Fd&;EV*9-%Zz_&f=}#c@m{rdsfS;W(yw zzJ%u_9M8JoyZO;V{z3`gAmNK7ypiK#UU4rSlK6`yey4-aeoaAtrUd_jgfEf&Tq}W3 zO1K<nIp1HnF1!=Ode?JY#J?7FD1M1A=WVBi%Xy;`F4t?ngyV0am^UNgcy0tfDB+Jt zxWW^Q@vo5Z(;P=L?27o`k@#}_A4<3!|0;A0f{h%{K?#@Rxgz26KDo|u5sz5cHxgft zXT-sOl0`wtXbJvtOfCqj<@hg3xE$wzgv<OtBwXhE@lb)Fe;E&#z&|R1`_Ksp=7E=# zjRWkR$HhGzap2;9eanH1d-Q?>7xyUfr%rSjp~KJ`y4^-aPgi3hzX5k0@kc^Ni1-hu zQpB$(>_Iruf!8ka#}kI?hkuPt>^kJ*_ITQ#)DuZnH%@>JdQzjUZF&eU;{QW@-~^8@ zPv?xw0Pmf5DEKj-;jM-q)+{iC*qs1gJ|O*k-{TN%aW9~(vK#h4fH<ddl#rht^9qG? z{*9nOpa0dq25ix%yjNg2GyfJGNaCCy|3eU~mN?jb3=bO!#wUxg7wv9PioVRN=k_v& zeJ2;cOGtIbPr1Dhbh3#23+xDV(5KTr%I*6Fk+)8J+=a#JPw>(O>9iYy^~d{4*o*oX wn;T6kInm1l!*3AI<FrSg&e{V+w&F(!WS%2ojv>2iirIJa_zm05%-d=I4=Hwut^fc4 literal 4432 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 diff --git a/main.c b/main.c index 9a6b51c..d1d464e 100644 --- a/main.c +++ b/main.c @@ -18,7 +18,7 @@ int ArrondirPixel(int nombre) /* Calcule un arrondi du pixel pour pouvoir respec return arrondi; } -PIXELS gen_pastille(PIXELS *serpent,int longueur_serpent) +PIXELS gen_pastille(PIXELS *serpent,PIXELS *pastilles,int longueur_serpent) /* nb_pastille = int nombre de pastille voulue , p_pastilles est un pointeur d'un tableau de pixels qui sont des pastilles*/ /*Générer une pastille dans la grid*/ @@ -34,13 +34,12 @@ PIXELS gen_pastille(PIXELS *serpent,int longueur_serpent) y_pastille = ArrondirPixel(rand()%H_GAME); for(i=0;i<longueur_serpent;i++) { - if(x_pastille == serpent[i].x && y_pastille == serpent[i].y) + if(x_pastille == serpent[i].x && y_pastille == serpent[i].y && x_pastille == pastilles[i].x && y_pastille == pastilles[i].y ) { - ok = 1; + ok = 1; /* Check si la pastille se genère sur une coordonné du serpent ou d'une pastille existante */ } - } - + } }while(ok); if(x_pastille < DECALEMENT) @@ -101,13 +100,15 @@ void DessinerScene(PIXELS *pastilles, PIXELS *serpent, int longueur_serpent) /* int main() { unsigned char pause = 0; - unsigned long *score =0; + unsigned long score =0; unsigned long suivant; int go_on=1; int n = 0; int m = 0; + + time_t temps; - size_t longueur_serpent = 200; + size_t longueur_serpent = 12; size_t longueur_pastilles = PASTILLES; PIXELS *serpent = (PIXELS *)malloc(longueur_serpent * sizeof(PIXELS)); PIXELS *pastilles = (PIXELS *)malloc(longueur_pastilles * sizeof(PIXELS)); @@ -115,6 +116,8 @@ int main() int direction = 0; int direction_davant = 0; + temps = time(NULL); /*Première mesure du temps*/ + if(serpent == NULL) { fprintf(stderr, "Erreur d'allocation de mémoire.\n"); return EXIT_FAILURE; @@ -189,11 +192,12 @@ int main() n=0; } - AfficherTimerEtScore(m,n,score); + AfficherTimerEtScore(&score,temps); + suivant=Microsecondes()+delta; direction_davant = direction; /* Check si le serpent à le droit de changer de direction */ - + MourrirSerpent(serpent,longueur_serpent); DeplacementSerpent(direction,serpent,longueur_serpent); if(MangerPastille(serpent,pastilles,&score,longueur_serpent) == 1) { diff --git a/main.h b/main.h index 67e5cc9..cd48c04 100644 --- a/main.h +++ b/main.h @@ -19,6 +19,6 @@ struct PIXELS { typedef struct PIXELS PIXELS; -PIXELS gen_pastille(PIXELS *serpent,int longueur_serpent); +PIXELS gen_pastille(PIXELS *serpent,PIXELS *pastilles,int longueur_serpent); #endif diff --git a/main.o b/main.o index 47723873a235b3cb338603499989010de5f25b85..e91cbd111f7d8409a17a6404d4cf869856ac67af 100644 GIT binary patch literal 5504 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 delta 2092 zcmZ8iZ%kWN6o0oZlm{)ZErn+{hLD8}WWjcrbyNALdEuEb9Bf2gG)UYB^^4I^;|8^m zH-wjl1ajhsO+O5yAB-;9geWG&v<q6Cal*D3K55Y`0YOs|j2O4zIqy%odXjtYxxe4< zo^#(lx9M=h)%wZ0N5g(0Z*4}@CX@<Zp;y)K>haB_vZ=nbq`q=XA0HoA)4x@->-uu~ zZ|BAO<*8RA5~);eGpy?I6+L!m>a!vC1U$_4v4iN#p^p_-x--f)!^E1BV@W0Vm~v<6 zb1l9tNTWx0VV*V4{J}aIv^dWvtYjz8s!3OE9d1!|WhavQMwt=RjIv0F%P0$!E2GSs zt2vsGTp<?cwKXTsNo7S%XPv5^Su=QD$s)G)KP;C~=84WIDMRJd;#nAW9WI)2U=A&w zqXkRA71yzb75%!JJV9A<s(#Z>yk3Dy;|N9_ZHGyt`@vTbOvKdY)4PHojoroLs?Db; zzVI=YvEs4s4ZH{OfrDx@&C=MHglRj~(uI!<WjC?i>mMMDM@27a@sv{<9m7zI&ttJT zMoA^5EA#7bm@52y<Ps?)&zdsaaAr^Tv?)UsC38rl?WPLb5#3WAHdXj_q(ZLBRG~h& zrxGz7j?V}&5nII8|3Nh_vGP^~Lu%VP-3v*i(VsBdyDIg#vLtCY5Yv=dd=|6NT6m~@ zj#-UWlf8?{6SGNWPQM9*h5HgqNo8JFQq)<q6S&4k*bOE)txohVs>xUmMOnK;*pgUS z)sz(nZB-|NUt>vnAgK7!7U46?ZWK>$xF<JUlN)SOi!b1Tv-fv*?E^!l`vA1Lds;iX zdh4qrO^uPpNcEBMk*07o@`xa~FlRN60vxCi90E%bW*f8C43^yuiBkl(m-^muJn1cT zba~uGf>4Rj<Cffm*P7>@Zbky)pSSqV|L`4oe#qj_)11#A%jbXJ<b%Q>JrY~seA9^v zV1W?i0xtNp=yb?9AWAB51Oz77YY&9PLt-D5N9%;A#Mi`6=#8MAhct4vlo@Rhw!|p= z0%}B=eP#IDhR+&)+wd+}E|yt|;X{URG<>_^Pa6JN!@o=(CQGh@;&~fxdAjJHh1a3R zD~GI)GFm`aes9;b4-NJQ5~2~qvl@)x-lX*<#9$Bdd*6d=UO6(uvBeyFgTqTW{9Rb} z%KZ!0eNaw**LN096J3&ZQNnFb&!6E}4i~v9_ozxJU~Q)=UXHDT=~9`UgJtv+<P%pc zC8hIm$~1>l7{o#LEti@88SML9<@9`>KRKMwbKk@R#<lZ_{1B03_7F^=k3d?IL&xbW z&}gD#*d=>lOOg})99zz@0~}5d)!uc{cpPRnnZtkQ@CP{jFAnGRRfQ-L1bD{hXUAZ~ zCx>1z5#yZuxeOz4%_n;=aqIyo@HgduMlVtxG-?5jKIrz#A^V4O84)s@t%VW)&+Ibv z2cqJz$K+Bl9f&%zg)miAfxpr^I}Dc@;hC})vB7OhD`C1U>gaHr(y}^HwTLj(1f%RN rcrMuLX!F6PU`uhB9vs?|1AYk}6$N_DXy>4&JSxsnm(d1bHSplS#;i|& diff --git a/prog b/prog index 5af8e2988ca3e0805448001c0f4331facc15d297..dce928b5610a999b36ec5f2d07aec3b95f4a199b 100755 GIT binary patch literal 21336 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 Fe*leg!*T!s literal 16808 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 GSoS~aqT_)8 diff --git a/test.c b/test.c new file mode 100644 index 0000000..d8d1319 --- /dev/null +++ b/test.c @@ -0,0 +1,26 @@ +#include <stdio.h> +#include <time.h> + +void afficherTemps(double secondes) { + int minutes = (int)(secondes / 60); + int secondesRestantes = (int)(secondes) % 60; + + printf("%02d:%02d\n", minutes, secondesRestantes); +} + +int main(void) +{ + time_t start, end; + double cpu_time_used; + + start = time(NULL); + + end = time(NULL); + + cpu_time_used = difftime(end, start); + + printf("Le programme a pris : "); + afficherTemps(cpu_time_used); + + return 0; +}