From fc8affc20172a3041822eab3cd238fc75f5c531a Mon Sep 17 00:00:00 2001 From: Taha Belkhiri <belkhiri.taha53@gmail.com> Date: Wed, 22 Jun 2022 00:25:20 +0200 Subject: [PATCH] fin Animate --- .../Animate/Res/king_fall_spritesheet.png | Bin 0 -> 942 bytes .../Belkhiri/Animate/Res/parallax1.png | Bin 0 -> 1113 bytes .../Belkhiri/Animate/Res/parallax2.png | Bin 0 -> 1986 bytes .../Belkhiri/Animate/Res/parallax3.png | Bin 0 -> 2779 bytes travail_individuel/Belkhiri/Animate/run | Bin 18480 -> 18768 bytes .../Belkhiri/Animate/src/render.c | 97 +++++++++++++++--- 6 files changed, 84 insertions(+), 13 deletions(-) create mode 100755 travail_individuel/Belkhiri/Animate/Res/king_fall_spritesheet.png create mode 100755 travail_individuel/Belkhiri/Animate/Res/parallax1.png create mode 100755 travail_individuel/Belkhiri/Animate/Res/parallax2.png create mode 100755 travail_individuel/Belkhiri/Animate/Res/parallax3.png diff --git a/travail_individuel/Belkhiri/Animate/Res/king_fall_spritesheet.png b/travail_individuel/Belkhiri/Animate/Res/king_fall_spritesheet.png new file mode 100755 index 0000000000000000000000000000000000000000..9489884989a017c0e7c4866f960e12ea83948162 GIT binary patch literal 942 zcmeAS@N?(olHy`uVBq!ia0y~yV2EH~U@+leW?*2jtmRi{U|?V@4sv&5Sa(k5B?AKk zOS+@4BLl<6e(pbstPBhc`2jv5uJUyU`Mqjxt(V!?qEKncH8n%hUsb_QT<HCV-gA=* zzP@|+@Y*#YA-4SuF|TjlJh6Sds+Q5tbt^i`b7KR275MoLh4>tmltjejub(@2Y}YO= zW?mBmgQ*iH{CVkmaZZAepkN4tXkB%+uClTqFE0ZFL)uhHkRw$~g8YL269E|P&pY`u zFfecyctjR6Fz_7$VMb96uLcGNrs<w8jv*25SEt-Ao8=(l;K-vaAia}gt*4am&;R*n zb~YX^;7f?Vm3N&<X4`B>y+C^b#!WlVnE9%#;rq~WR;>MS#<9X4?Z$6B(kJ|`alGB3 zy?OBl?!_UhE^`{9nB?VembxFSHUG4$q2r$7q>TIOyEA8;*5Fm*|DAWGc;ob~Gag&r zdh6iZ^kGlWmwny5D~#r(O%E@e^XB`>;7=;Y=3e}GX`gg&Xj0I!`Ag5q^39z5SMJRP zA@Pp)ZPTY*UUJdxO+)jgr$+L1Cw{-v;put0M<Zx@>iOg8H;r3W+stahxtYJr-gDyf zAz32}TS-0z?@J4_TRxhvcxE3nEA?ieoAZvImou|lRb%&v=-DpI)M_@~!PBx%)Q+(- z^4ZmHX4BC1a*B5~N_q{-{8J-CON+}2#Ah0_m0ai8o_oDCH1_J(^YQ2Ap8wXP8_sX8 zd(*eLvbMVV|KGZag}jGN5BXlc^y%y4$4oJ)F^3C!_cJ{a6MGQHDH(P#R@vv<^A~z; zrPsM8-@UX`(I{iV&a@eNUX`w!U#FaKDHK0+;JN6Vf0yQ_oN+2#`{C>BvfZYo%>N~Q zk}cQl3Y!tLL@WI8s_d4Ft(*-p;Trl=OT+o=8+ooX-(#$B^owOLU)B0>Rbq+0!uAEF z7OYilB|72Ui@V>8P5XE^b-Hgj=Vt3YF%ir1_f$8%J$LxgqrIL+x4wjG>hIY6;lU){ z{)-m84aeW>>`eUe?owmmvrLl@oDn6>8{R)^OthSHzbCa^YTk~2CMgHfkIrpj7SD}% z@zC@-|M@$PVW(EVQ<2%_wERxy>USnO(u@_+r=FcyWxcn;D(c3g`y7uC>qoz~5j$30 zqTKwu{BS|trj3p4hxvVG-pzezKjYIi1H1LoiRH;ZK7P9P;qagQhx`7s>E0F63J7$o RWME)m@O1TaS?83{1OPl~xDEgS literal 0 HcmV?d00001 diff --git a/travail_individuel/Belkhiri/Animate/Res/parallax1.png b/travail_individuel/Belkhiri/Animate/Res/parallax1.png new file mode 100755 index 0000000000000000000000000000000000000000..5923559c6b65d445d0b2cc4d33f02ba7a09bb5ba GIT binary patch literal 1113 zcmeAS@N?(olHy`uVBq!ia0y~yU=(0rU|7Jy%)r24HdF680|NtNage(c!@6@aFBupZ zSkfJR9T^xl_H+M9WMyDr;1BQ#ab2C&)0Wis|NEnk*yimey^9V77cwv~a29w(7BevL z9R^{><M}I67#Nr@d%8G=RNQ(yBXQDd1%VdDXAFh@6Q&CXxbkfX{rE4vicO$ROh7cY z-Y0rCtK@^(Y$fK0R@_&==u;$q+&QMjWy_WO)elwl4+Z)sHD&(H_c$UsDP_|&Z^i4S z?GMuOPFPG_t9jB^U`BUN!h5!<-|tpx{M~f!z=~>xoV&V9wi$TDujEzPI6pP}x2V^` z6HEzJQ}&8vPI$j*ndc_%ee;zKm20<M<H>W|vDfXYqxvQfpYUZmNoN9H{qa10x@d+E z|6@xo70GF@9<T;IS)p(+$?n>^_B9VmwcRb_{0lcRrKNaWoYX8@yk?V2UhVUP@n*|- z+SY7z3443n<<H{fvk%{Ma}J9Ls%|R!X#6*4lgej}2*LdxpIY8cJ#1HGSX!nMVdGIY zEv4+l#r#YDNx4Fa{Wd42EnUIv$)2X*s@zw%&of2vh^c)M|L=YI%#+Ty+qHgrp7Qy- z(8ryXVoI;)E#bcW)LE&o-a9#@>B*eRl*EUYL60K-W=;I5^MX75+agWLO<(J+A}`vr zPTCy$=E9?FE7nh3`Lp-NUCCyAVq?hBtfO`EV~PM9=dRe4^>OSjF)68fEJe{9jbayW zix)RcxxSsT_v)1idB<DtON4%tZaZ?f_EyRX1Fh2iGgYV7zGGXmRdxGUYt!r#VK?W^ zV~J+%ot1J&qK$v&$B(k#UWMhiKjvubc^V&Yctfda{`F_yU&KC)zT@Fo$3MgDeS5B9 z!ex!;TK5#L$v^kJ9(D1^jSBO&9m_J8#+aMNeKY=Z%;?&ObsthgGJgB5JTmu)Mc>6q z`RASTzE`xb|K4n6bm4E}Y&C)8PUa95SyATyZ7Eax`zD8a8o$_~mGWM>SMZ^T=vxV+ zc`4RiXJ)8WW_;`8SQ@n2USR1rH;?OI!@DHXUOoKx<MX^@hi=x`vicbnu-keCcT7@_ zjVmvAnq<p4C%!jeQ+3NbW!BgCUkRNo?RoRz`Mev7v+Nt*B-MSDJ7n~$X{u?%6z8oo zbCSMScn6rLJ#oKbX!&WG`;pMkFWi58EOjZLRZw&67sscIcTY|~d3J8!deLhNU&GS9 zBNluYczD;}e2MTYC81j@FLz6QUzw*iC%;$uxXkp-0`}{SS>~&67SGO#_1bnh_3-Y} zKAA5rUk|_bvJ|MD(h^oWJz8=p|E@5rMf{Uz2z{IXrG48?-bH7dvN~pd=Pdsi>|Xl+ z_W_yfo*AXRudVuGjtJB)v@H@e<mhq?;Au({5NTc@!E#hVgUykAArGCk|C!meY%lH7 TJ7CVhz`)??>gTe~DWM4fQDOI< literal 0 HcmV?d00001 diff --git a/travail_individuel/Belkhiri/Animate/Res/parallax2.png b/travail_individuel/Belkhiri/Animate/Res/parallax2.png new file mode 100755 index 0000000000000000000000000000000000000000..cb12a9ad69fc4a70f76f5efa0b1f6668820e207c GIT binary patch literal 1986 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 bAOHP#48NbeY<$bWz`)??>gTe~DWM4f6@1rf literal 0 HcmV?d00001 diff --git a/travail_individuel/Belkhiri/Animate/Res/parallax3.png b/travail_individuel/Belkhiri/Animate/Res/parallax3.png new file mode 100755 index 0000000000000000000000000000000000000000..2e3269931a180856f3e50709bcd043622e3b5268 GIT binary patch literal 2779 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 literal 0 HcmV?d00001 diff --git a/travail_individuel/Belkhiri/Animate/run b/travail_individuel/Belkhiri/Animate/run index fa53e56ec47a2779ed3be9de2e62aa87112c4e01..eb677533f30f4b109ace1368854e678d80af4578 100755 GIT binary patch delta 3848 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 delta 2666 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 B7h3=T diff --git a/travail_individuel/Belkhiri/Animate/src/render.c b/travail_individuel/Belkhiri/Animate/src/render.c index a13f0a0..239e608 100644 --- a/travail_individuel/Belkhiri/Animate/src/render.c +++ b/travail_individuel/Belkhiri/Animate/src/render.c @@ -2,28 +2,36 @@ SDL_Window *window; SDL_Renderer *renderer; +SDL_DisplayMode ScreenDimension; TTF_Font *RobotoFont; SDL_Surface * character_walk_surface; -SDL_Surface * character_jump_surface; +SDL_Surface * character_fall_surface; SDL_Surface * character_attack_surface; SDL_Texture * character_walk_texture; -SDL_Texture * character_jump_texture; +SDL_Texture * character_fall_texture; SDL_Texture * character_attack_texture; +SDL_Surface * parallax1_surface; +SDL_Surface * parallax2_surface; +SDL_Surface * parallax3_surface; + +SDL_Texture * parallax1_texture; +SDL_Texture * parallax2_texture; +SDL_Texture * parallax3_texture; + int character_walk_w; int character_walk_h; -int character_jump_w; -int character_jump_h; +int character_fall_w; +int character_fall_h; int character_attack_w; int character_attack_h; void CreateWindow(){ - SDL_DisplayMode ScreenDimension; if (SDL_Init(SDL_INIT_VIDEO) != 0){ printf("Couldn't create window."); @@ -57,21 +65,75 @@ void CreateWindow(){ void Game(int step){ SDL_RenderClear(renderer); + + SDL_Rect parallax2_rect; + parallax2_rect.x = step; + parallax2_rect.y = 0; + int parallax2_w, parallax2_h; + SDL_QueryTexture(parallax2_texture, NULL, NULL, ¶llax2_w, ¶llax2_h); + parallax2_rect.w = ScreenDimension.w; + parallax2_rect.h = ScreenDimension.h; + + SDL_Rect parallax3_rect; + parallax3_rect.x = 4 * step; + parallax3_rect.y = 0; + int parallax3_w, parallax3_h; + SDL_QueryTexture(parallax3_texture, NULL, NULL, ¶llax3_w, ¶llax3_h); + parallax3_rect.w = ScreenDimension.w/10; + parallax3_rect.h = ScreenDimension.h; + + + SDL_RenderCopyEx(renderer, parallax1_texture, NULL, NULL, 0, NULL, SDL_FLIP_NONE); + SDL_RenderCopyEx(renderer, parallax2_texture, ¶llax2_rect, NULL, 0, NULL, SDL_FLIP_NONE); + SDL_RenderCopyEx(renderer, parallax3_texture, ¶llax3_rect, NULL, 0, NULL, SDL_FLIP_NONE); + SDL_Rect character_walk_rect; - character_walk_rect.x = step; - character_walk_rect.y = 0; + character_walk_rect.x = 4 * step; + character_walk_rect.y = 100; character_walk_rect.w = 100; character_walk_rect.h = 250; - if (step < 100){ - SDL_Rect destRect; + + + SDL_Rect destRect; + if (step < 50){ destRect.w = character_walk_w/8; destRect.h = character_walk_h; destRect.x = (destRect.w * step)%character_walk_w; destRect.y = 0; SDL_RenderCopyEx(renderer, character_walk_texture, &destRect, &character_walk_rect, 0, NULL, SDL_FLIP_NONE); } + else if (step >= 50 && step < 100){ + destRect.w = character_fall_w/2; + destRect.h = character_fall_h; + destRect.x = (destRect.w * (step - 50))%character_fall_w; + destRect.y = 0; + character_walk_rect.y = 100 + (step - 50) * 5; + SDL_RenderCopyEx(renderer, character_fall_texture, &destRect, &character_walk_rect, 0, NULL, SDL_FLIP_NONE); + } + else if (step >= 100 && step < 150){ + destRect.w = character_walk_w/8; + destRect.h = character_walk_h; + destRect.x = (destRect.w * step)%character_walk_w; + destRect.y = 0; + character_walk_rect.y = 100 + (50) * 5; + SDL_RenderCopyEx(renderer, character_walk_texture, &destRect, &character_walk_rect, 0, NULL, SDL_FLIP_NONE); + } + else if (step >= 150 && step < 200){ + destRect.w = character_attack_w/4; + destRect.h = character_attack_h; + destRect.x = (destRect.w * (step - 150))%character_attack_w; + destRect.y = 0; + character_walk_rect.y = 100 + (50) * 5; + character_walk_rect.w *= 2; + character_walk_rect.h *= 1.5; + SDL_RenderCopyEx(renderer, character_attack_texture, &destRect, &character_walk_rect, 0, NULL, SDL_FLIP_NONE); + } + else { + running = 0; + } + SDL_RenderPresent(renderer); SDL_Delay(100); @@ -83,19 +145,28 @@ void MainLoop(){ int step = 0; character_walk_surface = IMG_Load("Res/king_run_spritesheet.png"); - character_jump_surface = IMG_Load("Res/king_jump_spritesheet.png"); + character_fall_surface = IMG_Load("Res/king_fall_spritesheet.png"); character_attack_surface = IMG_Load("Res/king_attack_spritesheet.png"); + parallax1_surface = IMG_Load("Res/parallax1.png"); + parallax2_surface = IMG_Load("Res/parallax2.png"); + parallax3_surface = IMG_Load("Res/parallax3.png"); character_walk_texture = SDL_CreateTextureFromSurface(renderer, character_walk_surface); - character_jump_texture = SDL_CreateTextureFromSurface(renderer, character_jump_surface); + character_fall_texture = SDL_CreateTextureFromSurface(renderer, character_fall_surface); character_attack_texture = SDL_CreateTextureFromSurface(renderer, character_attack_surface); + parallax1_texture = SDL_CreateTextureFromSurface(renderer, parallax1_surface); + parallax2_texture = SDL_CreateTextureFromSurface(renderer, parallax2_surface); + parallax3_texture = SDL_CreateTextureFromSurface(renderer, parallax3_surface); SDL_FreeSurface(character_walk_surface); - SDL_FreeSurface(character_jump_surface); + SDL_FreeSurface(character_fall_surface); SDL_FreeSurface(character_attack_surface); + SDL_FreeSurface(parallax1_surface); + SDL_FreeSurface(parallax2_surface); + SDL_FreeSurface(parallax3_surface); SDL_QueryTexture(character_walk_texture, NULL, NULL, &character_walk_w, &character_walk_h); - SDL_QueryTexture(character_jump_texture, NULL, NULL, &character_jump_w, &character_jump_h); + SDL_QueryTexture(character_fall_texture, NULL, NULL, &character_fall_w, &character_fall_h); SDL_QueryTexture(character_attack_texture, NULL, NULL, &character_attack_w, &character_attack_h); unsigned int a = SDL_GetTicks(); -- GitLab