From e2db72b03371db472843d81f0177106e238aee8d Mon Sep 17 00:00:00 2001 From: Tituya Date: Sun, 16 Aug 2020 23:12:04 +0200 Subject: [PATCH] =?UTF-8?q?Correction=20bug=20de=20vitesse=20r=C3=A9ductio?= =?UTF-8?q?n=20friction=20pour=20=C3=A9viter=20d'=C3=AAtre=20trop=20frustr?= =?UTF-8?q?ant=20ajout=202=20blocs=20ajout=20d'un=20niveau=20simplificatio?= =?UTF-8?q?n=20du=20code=20=C3=A9bauche=20d'une=20acc=C3=A9l=C3=A9ration?= =?UTF-8?q?=20verticale?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AST3.g3a | Bin 162732 -> 164432 bytes assets-cg/img/ice.png | Bin 0 -> 572 bytes assets-cg/img/switch.png | Bin 0 -> 292 bytes editor/AST3generator.py | 9 ++- editor/img/ice.png | Bin 0 -> 572 bytes editor/img/key2block4.png | Bin 631 -> 0 bytes editor/img/switch.png | Bin 0 -> 292 bytes editor/levels/0.lvl | 2 +- editor/levels/11.lvl | 2 +- editor/levels/12.lvl | 1 + editor/levels/2.lvl | 2 +- editor/levels/9.lvl | 2 +- include/collide.h | 6 +- src/collide.c | 21 +++--- src/drawlevel.c | 8 +++ src/main.c | 137 +++++++++++++++++++++++++------------- src/setlevel.c | 14 ++-- src/times.c | 4 +- times.lvl | 3 +- 19 files changed, 140 insertions(+), 71 deletions(-) create mode 100644 assets-cg/img/ice.png create mode 100644 assets-cg/img/switch.png create mode 100644 editor/img/ice.png delete mode 100644 editor/img/key2block4.png create mode 100644 editor/img/switch.png create mode 100644 editor/levels/12.lvl diff --git a/AST3.g3a b/AST3.g3a index 42f53e808904d39572985a507c73fd660b041b94..6bfd0cf9c9ba5e66acd09720deb1606438420ae4 100644 GIT binary patch delta 8777 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 z z0Sk!8MAT!kOy;o&{?lDZ#&2L6j!n6THO`<$HKM}0mt*-j&B#c4z>zX^T7t$+l&Vv;#~GBjw#h#hnlK>a47 z-+q}!LEtVAG~7A)DWT2GVZ#7t8hjHabG^#4mAUjGnae%s`$I{Ea)-^uGS_ivPePeS zGB>yhbrV4W8n+lI6qE!g=}>k){43|xEnM(&S+XST& z$`L3XCUQe)KJ2ED0Np?sTX=dC>L*Mj5`-ipD$3tb_a7t~u=d_8LLiuXWFs+aM8OD= zti7@tn3h)~_|>468pK?DHO(7eg;mq8Lceh+lZeXBWJIsM;jGw zlVpPhs%gffy*wh&h?&4Fm2jI&!@CaN?*JOeR$hS&eGyTT5$05T6d7n_`r4CLt-OL6 z*)gejw8>hhdveW7zDYhWS(kWu7(?MkHEkow%V?M117$qlVR!B;4E5Hp_$pA@GnEF*Th|CO{tDCe>j3icN<-hTuaW#s zDi(FJJBaYc=g6cM-~ehB^&?8r$Mp4lIS=l~C=51SediUz50fikJ?xM<9AoKSVrcqJ zJQ;*>b1diZum}|twZYQ+vV#XV9XB;Q?SXTD@MG6ohe;PoWXOFt4RVZ{Ieq?`d-@SB z{eYmmFJzHV_A?({2qiOmnR^$4@Jsl+(148I4WULStxd9n7L-ijl#G);q5!S>-F<#$ zB%(H`4XMBXlnC8;31$MVXMzSd3LzZ83Yop&ahISpLYZdh_l7)kK$|%oP(T+?BZj*4 zKKYYsX8KYTybR%&Ns^BTXI2_w{_70Sb6f5PHVp8#wRM`YT+Q$-np9c<#_qj^Ck+XI z`i$Uv*47az#KX`^9y%Ly)Ysv0qFy9u?XK5?bcP(u}*WmwQ6v6gOTagT? zRUcjV#ME4uhIyFAkCjZ-$BXzFTpkPEpE#QRAD8oikSe8_)KALEvJU2*Pgb$Wl4@rB zlNaqsL*0MBMv`9XjOcoXdlii+HRQJn#FReNHC()YpJ34ykcWW!eE&8+rrz$s1P;8! z2PmGXYv5(Fie?hcQ6y$zPJ$tdS$yeUZeiXrcavVZ2KC@}k}PdC82=LBM8+I2jQ=fy z(DLy<06ZSU5fAa>cL<6a93288G8P=A5yKI+z5&0$lsM*Y!Y&gFg@&x(h2e-=)&e|) z5P#E9pdAh-UIrP{J)OfRT*Yr!;SxwsOTcRJkgXF^kwE4i%MnPc8Iz~4SjMm8`oSM@ z1AKMBun|!qpwZA6#`t-M%d(ZSazHZATb^{KFWfz-e{zxeb|8Wn%%9!Wv=xmCDKlT9%cr;MT46j>{djzq4X&rt^?MRJA3V+G? zG30#xTSBXuf24qNJPX?_8;wSukDoF;9v&8GujKfR5etAE3B~||g|os_)Oxn#KxlCf z7Er-LaV5`BP6qb1(43PQuN)9{l`Idre1V{>z!(e-7_mTpU<*Avf?YN%2%Z_VWJj!H zdtCJp2A1kTY2+Yakz)uu53t5l%JItBNf_x@zRtiD4109gm#O}W&wTx*JMB;tYe+{2 z^L4Z_;vr=|j9^S-K75Ymdrk5DNRW>80sH&kl7rL_5o1}f1i*a>Pb#g2w=d&4%xBt$ zg-pk=^Zw$$zgzrw;!oR8WapC!O#7thM0-BTXJ+p^Yh6ZuejhxUc<6`DqG|ZKB9{^T z`vC=ucVK^n0`RWL`3-LLkMLmeIJjK2^Aq5{LkznB$j;=40$}m*M-4a0LwL-G#r`Wi zHa%!wfO=s-&uR>fw5+0-_Jk@ zZ8wO?O{l*NW3^Rweptxkv--<+0zBM~hKWH|b{z-XU!6VI&h_i_Kz5iA3x@Gn{;Ht* zylxPOrDrh!-^PiCYb@58JS>cz2F9^)fM70AYdIAHfdd4s&+rgnrNHE86qwXL={Co3 zEC~Bca^R~#Ku*2vSQc9kD(~h5R@fJ~4P*C#c{p=8)q|DajZ~A{{5?HS!7gb%7 delta 7300 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 Bf@J^z diff --git a/assets-cg/img/ice.png b/assets-cg/img/ice.png new file mode 100644 index 0000000000000000000000000000000000000000..67f595d20a9dcebc89505621299b844ec54fbeec GIT binary patch literal 572 zcmV-C0>k}@P)(iIT3V~oqA_O*+Vq6VC&f;zscau0=%zlB(YA~eFUkeCGB0{7j zYBjAI7h^+C@ZoKu0pI_aU&sFaJRP#Am$r!f73&L9vjDEexJ>p&AJ+I^#KwgByj0(=1IKU1*MuF2h;jGT7&%=*6m~^ zF$|D$hV{||ha?_mQJZ-&iKW7&_5c@iIyb^*ngaz$A|$S~Cov9v=Kab1SpPLh-aK6v<90ng1(XK+vpH92#Z(D}X@*mQH}^pv%peGNZj4!^L73}iyHmHs zI0rF`!?E$}*m!v(o@Yn^8idt1zRYmC7^}~?5g7o#L>I4q`A zu~tZF6U3WPNz~R`T^8doYlDP4;k6nDQKJ8mu5)KVgZ12C5KrFJvZ)NfHapdnwFj)L zLE^s%A;zpemN%iQNgCBD0t_&YA_A5L+Ip2{ocdjn0E?VK0f`NifN2VLbBFgxSNO?~ z*lw%@5pX+p7h)?&&SE!19>ifamA*L7V)v~3A>d(x-HkYx?#n-zeJ0?>vrzW{0000< KMNUMnLSTY5`}70= literal 0 HcmV?d00001 diff --git a/assets-cg/img/switch.png b/assets-cg/img/switch.png new file mode 100644 index 0000000000000000000000000000000000000000..74d6021a3bd841c7c1c6eb3f74c8e29112a49f89 GIT binary patch literal 292 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfxF9+RPf%lt-}i?t3DR-AFac)$F@lS>M&FW0wCliPRP^a|$_B_qwEu!iVv?jDm# zsc+AmTgQ9%fz&+~_BV~n9}3n+sF_}jnc8qZTP>=Qs=7cni>=6mwT o0|o`}@>SDg_k1@By5BB;^;6-tNzdzAfZk;AboFyt=akR{0Ja8r;Q#;t literal 0 HcmV?d00001 diff --git a/editor/AST3generator.py b/editor/AST3generator.py index 1d0389b..e17fb10 100644 --- a/editor/AST3generator.py +++ b/editor/AST3generator.py @@ -93,6 +93,10 @@ def place(): fenetre.blit(pygame.transform.scale(blackout,(52,52)),(52*b,52*a)) if grille[a][b]=="B": fenetre.blit(pygame.transform.scale(damaged,(52,52)),(52*b,52*a)) + if grille[a][b]=="i": + fenetre.blit(pygame.transform.scale(ice,(52,52)),(52*b,52*a)) + if grille[a][b]=="S": + fenetre.blit(pygame.transform.scale(switch,(52,52)),(52*b,52*a)) fenetre.blit(level, (10, 10)) fenetre.blit(levelgr, (10, 60)) fenetre.blit(timeapp, (55, 10)) @@ -116,7 +120,7 @@ fenetre = pygame.display.set_mode((25*52, 14*52)) font = pygame.font.SysFont('arial',25,True) #Defini la suite des blocs pendant les changements (cliquer sur un 1 va donner un 2...) -suite=["0","1","d","s","e","k","3","K","a","c","m","t","l","b","B"] +suite=["0","1","d","s","e","k","3","K","a","c","m","t","l","b","B","i","S"] id_level = 0 gravityid = 6 @@ -138,7 +142,8 @@ coin = pygame.image.load("editor/img/coin.png").convert_alpha() change = pygame.image.load("editor/img/change.png").convert_alpha() blackout = pygame.image.load("editor/img/blackout.png").convert_alpha() damaged = pygame.image.load("editor/img/damaged.png").convert_alpha() - +switch = pygame.image.load("editor/img/switch.png").convert_alpha() +ice = pygame.image.load("editor/img/ice.png").convert_alpha() load(id_level) diff --git a/editor/img/ice.png b/editor/img/ice.png new file mode 100644 index 0000000000000000000000000000000000000000..67f595d20a9dcebc89505621299b844ec54fbeec GIT binary patch literal 572 zcmV-C0>k}@P)(iIT3V~oqA_O*+Vq6VC&f;zscau0=%zlB(YA~eFUkeCGB0{7j zYBjAI7h^+C@ZoKu0pI_aU&sFaJRP#Am$r!f73&L9vjDEexJ>p&AJ+I^#KwgByj0(=1IKU1*MuF2h;jGT7&%=*6m~^ zF$|D$hV{||ha?_mQJZ-&iKW7&_5c@iIyb^*ngaz$A|$S~Cov9v=Kab1SpPLh-aK6v<90ng1(XK+vpH92#Z(D}X@*mQH}^pv%peGNZj4!^L73}iyHmHs zI0rF`!?E$}*m!v(o@Yn^8idt1zRYmC7^}~?5g7o#L>I4q`A zu~tZF6U3WPNz~R`T^8doYlDP4;k6nDQKJ8mu5)KVgZ12C5KrFJvZ)NfHapdnwFj)L zLE^s%A;zpemN%iQNgCBD0t_&YA_A5L+Ip2{ocdjn0E?VK0f`NifN2VLbBFgxSNO?~ z*lw%@5pX+p7h)?&&SE!19>ifamA*L7V)v~3A>d(x-HkYx?#n-zeJ0?>vrzW{0000< KMNUMnLSTY5`}70= literal 0 HcmV?d00001 diff --git a/editor/img/key2block4.png b/editor/img/key2block4.png deleted file mode 100644 index d38d315a5fa7d0da395f51bdbd837f35ea92fd52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 631 zcmV--0*L*IP)-t#`@Niz=N^h0E57WR1)?_P%e6H_nV2oz1=HaK8Tk^S8=h zz8Zjf^)did`LETo{C&Q;4uEyz@sinT1OTkvn*`w2hh>_rgoW7&0H)_wuq=zp?GXUJ zzg)&v@Op9#i8F{}ux%K7vxui5^Mr-j32HwL05by?({n5Qc(uxIGsJTQ<7lXYh=vPi z`Z!2anyrK&f`!>}*fM;3wutWvQ?(^tJQ`*A{znEY9tS}}{Z9gb6kSbX<+%D>q0jB& zjbotgPt}$n0RgllhhdawLmZ|6csBS2os%^PSq9Bkg74=gdyziM{Lethb`01?$JbfBftCGE5nRF{M3mn3=H)P=TG}b3ws5%-6J$$s3eq1 zlAlotkb;t9Q!B?HY#Hj8@+L+=N9_%)6dFOoUYn?n{W3@Y)vkAGDPachXU0!V?6r$` z-%;>g3bwF$t%Sr;KSeJf6i5=d^JEPG#}TxZkr~BaGs2*-6=;DZgDB1k`3u^#$)9L$ RE;IlD002ovPDHLkV1g~B6_x-1 diff --git a/editor/img/switch.png b/editor/img/switch.png new file mode 100644 index 0000000000000000000000000000000000000000..74d6021a3bd841c7c1c6eb3f74c8e29112a49f89 GIT binary patch literal 292 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfxF9+RPf%lt-}i?t3DR-AFac)$F@lS>M&FW0wCliPRP^a|$_B_qwEu!iVv?jDm# zsc+AmTgQ9%fz&+~_BV~n9}3n+sF_}jnc8qZTP>=Qs=7cni>=6mwT o0|o`}@>SDg_k1@By5BB;^;6-tNzdzAfZk;AboFyt=akR{0Ja8r;Q#;t literal 0 HcmV?d00001 diff --git a/editor/levels/0.lvl b/editor/levels/0.lvl index 0080bf1..72e6895 100644 --- a/editor/levels/0.lvl +++ b/editor/levels/0.lvl @@ -1,4 +1,4 @@ -11100111111111111111111111l00000l01BB1BB1BB1BB1BB1100000000100100100100100110000000010000010010010011b0t000001000000001001001111111000100000000000100111111d000100000000000000100000d000100000000000000010000d000000000000000011110000d000030000a0c0m0000110000d000030000a0c0m0000110000d000030000a0c0m0000110s00d00k0300K0a0c0m00e0111100111111111111111111116 +11100111111111111111111111l00000l01BB1BB1BB1BB1BB11000000001001001001001001100000000i0000010010010011b0t00000i000000001001001111111000i00000000000100111111d000i000S00S0000000100000d000i00000000000000010000d000000000000000011110000d000030000a0c0m0000110000d000030000a0c0m0000110000d000030000a0c0m0000110s00d00k0300K0a0c0m00e0111100111111111111111111116 7 9 \ No newline at end of file diff --git a/editor/levels/11.lvl b/editor/levels/11.lvl index 6aa777f..96efeeb 100644 --- a/editor/levels/11.lvl +++ b/editor/levels/11.lvl @@ -1 +1 @@ -11111111111111111111111111000000010000000100000101100000001000000010000010110000000100000001000001011000100010001000100100101100010001000100010010010110001000100010001001001011000100010001000100100101100010001000100010010010110001000100010001001001011000100000001000000100001100010000000100000010000110s01000000010000001000e111111111111111111111111116 \ No newline at end of file +1ddddddddddd11dddddddddd11dddddddddd00000dd3aaaaai1dd111100000000000030000i1dd000000000001110003000i1d000001111100K000003000i1d00000S00k0000000003aBB110s000100000ddd011103atl11111331ddddddddddddddd1111ddd001dddddddd11d0S0ddd11ddd00d1dd11d000300000dd11ddd000000000000300000dd11dddaaa00000000d3S00e0dd11dddddd00S0d111d3d000ddd11ddddddddddddddddddddddd16 \ No newline at end of file diff --git a/editor/levels/12.lvl b/editor/levels/12.lvl new file mode 100644 index 0000000..082da17 --- /dev/null +++ b/editor/levels/12.lvl @@ -0,0 +1 @@ +111111111111111111111111100000000000010000000i000010000000000010000000i000110000000000010000000i000110000000000000000000i000110000000000000000000i000110000000000000000000i000110000S000S000S000S00i000110000000000000000000i000110000000000000000000i00011011100S000S000S00000000110000000000000000000000011s000000000000000000000e111111111111111111111111116 \ No newline at end of file diff --git a/editor/levels/2.lvl b/editor/levels/2.lvl index d1d3cf3..1352339 100644 --- a/editor/levels/2.lvl +++ b/editor/levels/2.lvl @@ -1,4 +1,4 @@ 10001011111011111111111111000101dd10001111dddd11110000101dd10001000000000001111101dd1aaa1000ccccddd110s00010013331000000000011dddd110010001mmmdd00000100000000010e010t0dd00000011111100011111d1dddddd1111k00000001d000111001111111111111101d00000000000111000010000100000000000000010K010000100011100000011110001000010001110000dd11110001011111011111111111117 5 -7 \ No newline at end of file +9 \ No newline at end of file diff --git a/editor/levels/9.lvl b/editor/levels/9.lvl index dabd977..baf3c31 100644 --- a/editor/levels/9.lvl +++ b/editor/levels/9.lvl @@ -1 +1 @@ -00000ddddddd100000000000011111111111111111110011111000000dd1111ddd0K10000b1100111000000100000100000110000100000010000010010011000k111dd101dd00d10000011000110000001000001BBBB011000100011dd1000001dddd01100010ddd1dd1d00dd1011001133310ddd1dd1BBBBB1t00001100000ddd1dd1000001ddd1111s0000ddd1dd10000011111111BBB111aaaaa110001111111100000000000e10000000000006 \ No newline at end of file +00000ddddddd100000000000011111111111111111110011111000000dd1111ddd0K10000b1100111000000100000100000110000100000010000010010011000k111dd101dd00d10000011000110000001000001BBBB011000100011dd1000001dddd01100010ddd1dd1d00dd1011001133310ddd1dd1000001t00001100000ddd1dd1BBBBB1ddd1111s0000ddd1dd10000011111111BBB111aaaaa110001111111100000000000e10000000000006 \ No newline at end of file diff --git a/include/collide.h b/include/collide.h index e4ce6a5..6286a58 100644 --- a/include/collide.h +++ b/include/collide.h @@ -1,5 +1,5 @@ -char collide(int x, int y, char level[], char gravity, char block); -char collide_solid(int x, int y, char level[], char gravity); +char collide(int x, int y, char level[], char block); +char collide_solid(int x, int y, char level[]); char collide_dead(int x, int y, char level[]); char collide_point(int x, int y, char level[], char block); -char collide_end(int x, int y, char level[], char gravity); +char collide_end(int x, int y, char level[]); diff --git a/src/collide.c b/src/collide.c index 9ff31a6..3e5f316 100644 --- a/src/collide.c +++ b/src/collide.c @@ -3,7 +3,7 @@ #define DEAD_COLLISION 3 //make the collision with the deadly block less effective -char collide(int x, int y, char level[], char gravity, char block) //detect if player is in a block +char collide(int x, int y, char level[], char block) //detect if player is in a block { if((level[(int)(x/16) + (int)((y + PLAYER_HEIGHT)/16) * 25] == block || level[(int)((x + PLAYER_HEIGHT)/16) + (int)((y + PLAYER_HEIGHT)/16) * 25] == block || @@ -12,14 +12,15 @@ char collide(int x, int y, char level[], char gravity, char block) //detect if p return 0; } -char collide_solid(int x, int y, char level[], char gravity) +char collide_solid(int x, int y, char level[]) { - return collide(x, y, level, gravity, '1') - || collide(x, y, level, gravity, '3') - || collide(x, y, level, gravity, '4') - || collide(x, y, level, gravity, 'c') - || collide(x, y, level, gravity, 'C') - || collide(x, y, level, gravity, 'B'); + return collide(x, y, level, '1') + || collide(x, y, level, '3') + || collide(x, y, level, '4') + || collide(x, y, level, 'c') + || collide(x, y, level, 'C') + || collide(x, y, level, 'B') + || collide(x, y, level, 'i'); } char collide_dead(int x, int y, char level[]) @@ -35,7 +36,7 @@ char collide_point(int x, int y, char level[], char block) return (level[(int)(x/16) + (int)(y/16) * 25] == block); } -char collide_end(int x, int y, char level[], char gravity) +char collide_end(int x, int y, char level[]) { - return collide(x, y, level, gravity, 'e'); + return collide(x, y, level, 'e'); } diff --git a/src/drawlevel.c b/src/drawlevel.c index f33f678..2821d22 100644 --- a/src/drawlevel.c +++ b/src/drawlevel.c @@ -20,6 +20,8 @@ extern bopti_image_t img_key2block; //block link to the key 2 extern bopti_image_t img_key2blockvoid; //block link to the key 2 extern bopti_image_t img_damaged; //damaged block extern bopti_image_t img_chock; //chock block +extern bopti_image_t img_switch; //switch block +extern bopti_image_t img_ice; //switch block void draw_player(int x, int y) { @@ -77,6 +79,12 @@ void draw_level(char level[]) case 'l': //chock blocks dimage(x,y,&img_chock); break; + case 'i': //chock blocks + dimage(x,y,&img_ice); + break; + case 'S': //chock blocks + dimage(x,y,&img_switch); + break; } x+=16; if(x==16*25) diff --git a/src/main.c b/src/main.c index cdf4670..bbca2cd 100644 --- a/src/main.c +++ b/src/main.c @@ -11,9 +11,11 @@ #include "times.h" #include "define.h" -#define ACCELERATION 0.2 +#define VACCELERATION 0.2 +#define HACCELERATION 0.01 #define MAX_VSPD 9.0 -#define FRICTION 0.1 +//#define MAX_HSPD 3.0 +#define FRICTION 0.06 int main(void); @@ -47,7 +49,7 @@ void game(int *id_level, char mode) int disappear = 13; float vspd = 1.0; - int vert_spd = 1; + //float hspd = 2.0; extern bopti_image_t img_speedrun; set_level(*id_level, level, &start_x, &start_y, &gravity, &appear, &disappear); @@ -77,13 +79,15 @@ void game(int *id_level, char mode) dprint(162,173,C_RGB(110,110,110),"sur certains blocs"); dprint(315,115,C_RGB(110,110,110),"Bravo !"); } - dprint(150,100,C_GREEN,"%d",player_x); - dprint(150,120,C_GREEN,"%d",player_y); + //dprint(150,100,C_GREEN,"%d",player_x); + //dprint(150,120,C_GREEN,"%d",player_y); + //dprint(150,120,C_GREEN,"%.2j",(int)(hspd*100)); + dprint(150,120,C_GREEN,"%.2j",(int)(vspd*100)); if(!mode) dprint_opt(340, 0, C_RGB(255,190,0), C_BLACK, DTEXT_LEFT, DTEXT_TOP, "Coin : %d", coin); - /*dprint(320,120,C_GREEN,"%d",collide_solid(player_x+1, player_y, level, gravity)); - dprint(320,140,C_GREEN,"%d",collide_solid(player_x-1, player_y, level, gravity)); - dprint(320,160,C_GREEN,"%d",collide_solid(player_x, player_y+1, level, gravity)); - dprint(320,180,C_GREEN,"%d",collide_solid(player_x, player_y-1, level, gravity));*/ + /*dprint(320,120,C_GREEN,"%d",collide_solid(player_x+1, player_y, level)); + dprint(320,140,C_GREEN,"%d",collide_solid(player_x-1, player_y, level)); + dprint(320,160,C_GREEN,"%d",collide_solid(player_x, player_y+1, level)); + dprint(320,180,C_GREEN,"%d",collide_solid(player_x, player_y-1, level));*/ /*dprint(300,100,C_GREEN,"%d",collide_dead(player_x, player_y, level)); dprint(300,120,C_GREEN,"%c",level[(int)((player_x-1)/16)+(int)((player_y-1)/16*25)]); //top left @@ -97,21 +101,55 @@ void game(int *id_level, char mode) //Right collision if(keydown(KEY_RIGHT)) { - if(!collide_solid(player_x+PLAYER_SPEED, player_y, level, gravity)) player_x+=PLAYER_SPEED; - else if(!collide_solid(player_x+1, player_y, level, gravity)) player_x+=1; + /*if(!collide_solid(player_x+(int)hspd+1, player_y, level)) + { + if (hspd=388) player_x=-4; } //Left collision else if(keydown(KEY_LEFT)) { - if(!collide_solid(player_x-PLAYER_SPEED, player_y, level, gravity)) player_x-=PLAYER_SPEED; - else if(!collide_solid(player_x-1, player_y, level, gravity)) player_x-=1; + /*if(!collide_solid(player_x-(int)hspd-1, player_y, level)) + { + if (hspd=5.0) //Damaged block + if(collide(player_x, player_y+(int)vspd+2, level, 'B') && vspd>=5) //Damaged block { if(level[((player_x)/16)+((player_y+25)/16)*25]=='B') level[((player_x)/16)+((player_y+25)/16)*25]='0'; if(level[((player_x+17)/16)+((player_y+25)/16)*25]=='B' && collide_point(player_x+15, player_y+22, level, 'B')) level[((player_x+17)/16)+((player_y+25)/16)*25]='0'; vspd=1.0; } - if(collide(player_x, player_y-vert_spd-2, level, gravity, 'B') && vspd>=5.0) //Damaged block + if(collide(player_x, player_y-(int)vspd-2, level, 'B') && vspd>=5) //Damaged block { - if(level[((player_x)/16)+((player_y-vert_spd-2)/16)*25]=='B') level[((player_x)/16)+((player_y-vert_spd-2)/16)*25]='0'; - if(level[((player_x+17)/16)+((player_y-vert_spd-2)/16)*25]=='B' && collide_point(player_x+15, player_y-12, level, 'B')) level[((player_x+17)/16)+((player_y-vert_spd-2)/16)*25]='0'; + if(level[((player_x)/16)+((player_y-(int)vspd-2)/16)*25]=='B') level[((player_x)/16)+((player_y-(int)vspd-2)/16)*25]='0'; + if(level[((player_x+17)/16)+((player_y-(int)vspd-2)/16)*25]=='B' && collide_point(player_x+15, player_y-12, level, 'B')) level[((player_x+17)/16)+((player_y-(int)vspd-2)/16)*25]='0'; vspd=1.0; } + if(level[((player_x+6)/16)+((player_y+6)/16)*25] == 'S') //Switch block + { + level[((player_x+6)/16)+((player_y+6)/16)*25] = '0'; + vspd=1.0; + if(!gravity) gravity=1; + else gravity=0; + } + if((framelevel/FPS)>disappear) for (int i = 0; level[i]!='\0' ; i++) if(level[i]=='c') level[i]='0'; //after x seconds blocks disappear if((framelevel/FPS)>appear) for (int i = 0; level[i]!='\0' ; i++) if(level[i]=='m') level[i]='C'; //after x seconds blocks appear diff --git a/src/setlevel.c b/src/setlevel.c index a9444d5..05388fb 100644 --- a/src/setlevel.c +++ b/src/setlevel.c @@ -2,7 +2,7 @@ #include void set_level(int id_level, char level[], int *startx, int *starty, char *gravity, int *appear, int *disappear){ switch(id_level){case 0: -memcpy(level,"11100111111111111111111111l00000l01BB1BB1BB1BB1BB1100000000100100100100100110000000010000010010010011b0t000001000000001001001111111000100000000000100111111d000100000000000000100000d000100000000000000010000d000000000000000011110000d000030000a0c0m0000110000d000030000a0c0m0000110000d000030000a0c0m0000110s00d00k0300K0a0c0m00e011110011111111111111111111",350); +memcpy(level,"11100111111111111111111111l00000l01BB1BB1BB1BB1BB11000000001001001001001001100000000i0000010010010011b0t00000i000000001001001111111000i00000000000100111111d000i000S00S0000000100000d000i00000000000000010000d000000000000000011110000d000030000a0c0m0000110000d000030000a0c0m0000110000d000030000a0c0m0000110s00d00k0300K0a0c0m00e011110011111111111111111111",350); *appear=7; *disappear=9; break; @@ -12,7 +12,7 @@ break; case 2: memcpy(level,"10001011111011111111111111000101dd10001111dddd11110000101dd10001000000000001111101dd1aaa1000ccccddd110s00010013331000000000011dddd110010001mmmdd00000100000000010e010t0dd00000011111100011111d1dddddd1111k00000001d000111001111111111111101d00000000000111000010000100000000000000010K010000100011100000011110001000010001110000dd1111000101111101111111111111",350); *appear=5; -*disappear=7; +*disappear=9; break; case 3: memcpy(level,"11001111111001111111111111000111dddd000000000100013000111dddd00000000010003300000000dd11111000010e03100000000dd03a01000011111111110000dd03a01000000001100s1dd00ddt3a0100000000110001dd00dd1110100000000110001dd0Kdd00001ddd000ddd10001dd00dd00001111100ddd10001dd00dd00001000000ddd30001dd0000000010k000000330001dd0000000010000000031d001111111001111111111117",350); @@ -39,13 +39,16 @@ case 8: memcpy(level,"dddddddddddddddddddddddddBBBBBBBBBBBBBBBBBBBBBBBBB100001kk10011111dt0a000011000010010010000d11a00001100001BB100100000000000013000000000010001110000000300000000001aaaaaa00000001111110000010000000011111100000000001000000001000110000000a001BBBd00a0100013000000000010001000010003300s000000010K0100001e003aaBBBBBBBBBBBBBBBBBBBaaaaddddddddddddddddddddddddd",350); break; case 9: -memcpy(level,"00000ddddddd100000000000011111111111111111110011111000000dd1111ddd0K10000b1100111000000100000100000110000100000010000010010011000k111dd101dd00d10000011000110000001000001BBBB011000100011dd1000001dddd01100010ddd1dd1d00dd1011001133310ddd1dd1BBBBB1t00001100000ddd1dd1000001ddd1111s0000ddd1dd10000011111111BBB111aaaaa110001111111100000000000e1000000000000",350); +memcpy(level,"00000ddddddd100000000000011111111111111111110011111000000dd1111ddd0K10000b1100111000000100000100000110000100000010000010010011000k111dd101dd00d10000011000110000001000001BBBB011000100011dd1000001dddd01100010ddd1dd1d00dd1011001133310ddd1dd1000001t00001100000ddd1dd1BBBBB1ddd1111s0000ddd1dd10000011111111BBB111aaaaa110001111111100000000000e1000000000000",350); break; case 10: memcpy(level,"111111111133111111100011111111111133311111110K01111100000100111111111000111110s000101111111000000011111110K10111111d000000011111110K1011111a001BBBBB111100000101111d0a010000011110000010111a03011d0ddd1111001ddd011d0a0d11000001111000000010a30111100e00111100000k0130ad1111aaaaa1111dd000001031111111ddd1111111111111001111111aaa1111111111111001111111000111",350); break; case 11: -memcpy(level,"11111111111111111111111111000000010000000100000101100000001000000010000010110000000100000001000001011000100010001000100100101100010001000100010010010110001000100010001001001011000100010001000100100101100010001000100010010010110001000100010001001001011000100000001000000100001100010000000100000010000110s01000000010000001000e11111111111111111111111111",350); +memcpy(level,"1ddddddddddd11dddddddddd11dddddddddd00000dd3aaaaai1dd111100000000000030000i1dd000000000001110003000i1d000001111100K000003000i1d00000S00k0000000003aBB110s000100000ddd011103atl11111331ddddddddddddddd1111ddd001dddddddd11d0S0ddd11ddd00d1dd11d000300000dd11ddd000000000000300000dd11dddaaa00000000d3S00e0dd11dddddd00S0d111d3d000ddd11ddddddddddddddddddddddd1",350); +break; +case 12: +memcpy(level,"111111111111111111111111100000000000010000000i000010000000000010000000i000110000000000010000000i000110000000000000000000i000110000000000000000000i000110000000000000000000i000110000S000S000S000S00i000110000000000000000000i000110000000000000000000i00011011100S000S000S00000000110000000000000000000000011s000000000000000000000e11111111111111111111111111",350); break; } set_gravity(id_level, gravity); @@ -98,6 +101,9 @@ break; case 11: *default_gravity = 0; break; +case 12: +*default_gravity = 0; +break; }} void del_level(char level[]) {memcpy(level,"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",350);} \ No newline at end of file diff --git a/src/times.c b/src/times.c index 3de86d8..6182615 100644 --- a/src/times.c +++ b/src/times.c @@ -12,7 +12,7 @@ void check_medal(unsigned int frame_level, int id_level) { float time=1.0; float framefloat = frame_level; -float level_time[] = {5.81,8.29,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25}; +float level_time[] = {5.81,8.38,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25,7.72}; time = level_time[id_level-1]; if(frame_level/FPS < (unsigned int)time || (frame_level/FPS <= (unsigned int)time && @@ -29,7 +29,7 @@ void draw_time(int id_level) { dclear(C_WHITE); float time=1.0; -float level_time[] = {5.81,8.29,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25}; +float level_time[] = {5.81,8.38,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25,7.72}; time = level_time[id_level-1]; dimage(160,90,&img_createur); diff --git a/times.lvl b/times.lvl index 8a52ff0..23eb6c4 100644 --- a/times.lvl +++ b/times.lvl @@ -1,5 +1,5 @@ 5.81 -8.29 +8.38 5.89 8.68 3.84 @@ -8,3 +8,4 @@ 7.48 10.46 9.25 +7.72 \ No newline at end of file