From cc719de188236790e4c4418ff62eee5679083688 Mon Sep 17 00:00:00 2001 From: Tituya Date: Thu, 20 Aug 2020 01:05:39 +0200 Subject: [PATCH] correction bug appear block nouveau niveau compteur de mort simplification touche ajout tutoriel ajout touche de reset rapide --- AST3.g3a | Bin 166492 -> 166936 bytes editor/levels/0.lvl | 6 ++-- editor/levels/12.lvl | 2 +- editor/levels/2.lvl | 6 ++-- editor/levels/4.lvl | 4 +-- editor/levels/6.lvl | 6 ++-- editor/levels/7.lvl | 2 +- include/collide.h | 1 + src/collide.c | 26 +++++++++++++- src/drawlevel.c | 3 ++ src/main.c | 81 ++++++++++++++++++++++++++++++------------- src/menu.c | 9 +++-- src/setlevel.c | 30 ++++++++-------- src/times.c | 4 +-- times.lvl | 3 +- 15 files changed, 124 insertions(+), 59 deletions(-) diff --git a/AST3.g3a b/AST3.g3a index 78991f8afb647ad0c95e54d1f671ee1c262ae4f8..df5776a4c70546f46178fdd56ffd3e7074dd6a11 100644 GIT binary patch delta 9083 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 delta 8449 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"); dprint(180, 45, C_RGB(83,255,0), "LEVEL : %d", *id_level); - dprint(320, 8, C_RGB(255,178,0), "COIN : %d", coin); + dprint(320, 3, C_RGB(255,178,0), "COIN : %d", coin); + dprint(311, 17, C_RGB(150,16,16), "DEATH : %d", death_count); dupdate(); if (keydown_any(KEY_SHIFT, KEY_EXE, 0)) { @@ -355,6 +377,16 @@ void game(int *id_level, char mode) break; } } + if(keydown_any(KEY_EXIT, KEY_MENU, 0)) + { + if(!buffer) + { + menu_loop = 0; + game_loop = 0; + break; + } + } + else buffer = 0; while (keydown_any(KEY_UP, KEY_DOWN, 0)) clearevents(); } } @@ -377,6 +409,7 @@ void game(int *id_level, char mode) if(!speed_menu(id_level)) { mode = 1; + death_count = 0; game(id_level, mode); } else main(); @@ -406,8 +439,8 @@ int main(void) } else if(valeur==2) { - dprint_opt(198, 90, C_WHITE, C_BLACK, DTEXT_LEFT, DTEXT_TOP, "CONTROLS"); - getkey(); + int id_level = 0; + game(&id_level, mode); } return 0; } diff --git a/src/menu.c b/src/menu.c index 9942e08..6e3f543 100644 --- a/src/menu.c +++ b/src/menu.c @@ -22,7 +22,7 @@ char start_menu() else if (selection == -1) selection = 3; dtext(32, Y_POS, C_BLACK, "PLAY"); dtext(32, Y_POS + 12, C_BLACK, "SPEEDRUN MODE"); - dtext(32, Y_POS + 24, C_BLACK, "CONTROL"); + dtext(32, Y_POS + 24, C_BLACK, "TUTORIAL"); dtext(32, Y_POS + 36, C_BLACK, "EXIT GAME"); dtext(16, Y_POS + (selection * 12), C_BLACK, ">"); dupdate(); @@ -45,7 +45,7 @@ char speed_menu(int *id_level) char gravity = 0; //0 down 1 up int start_x; int start_y; - + char buffer = 1; int appear = 10; int disappear = 13; @@ -86,7 +86,10 @@ char speed_menu(int *id_level) del_level(level); return 0; } - if(keydown_any(KEY_EXIT, KEY_MENU, 0)) return 1; + if(keydown_any(KEY_EXIT, KEY_MENU, 0)) { + if(!buffer) return 1; + } + else buffer = 0; while (keydown_any(KEY_RIGHT, KEY_LEFT, 0)) clearevents(); } return 0; diff --git a/src/setlevel.c b/src/setlevel.c index 359f9cd..ae9341f 100644 --- a/src/setlevel.c +++ b/src/setlevel.c @@ -2,25 +2,25 @@ #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,"11100111111111111111111111l00000l01BB1BB1BB1BB1BB11000000001001001001001001100000000i0000010010010011b0t00000i0hhh00001001001111111000i00000000000100111111d000i000S00S0000000100000d000i00000000000000010000d000000000000000011110000d000030000a0c0m0000110000d000030000a0c0m0000110000d000030000a0c0m0000110s00d00k0300K0a0c0m00e011110011111111111111111111",350); -*appear=7; -*disappear=9; +memcpy(level,"111111111111111111111111100000000c300000000000100000000000c3000000k0K0l1000111ddd1111aaa111111111hh1111ddd1111aaa1ddddd00000110000001110001d000000000110s00001110001d000000000111111001110001d0011d1100110b01001110001d00e000000110S01001110001d000000000110001001110001d011111000100t01000m00001d000000000000001000m00001ddddd0000001111111111111111111111111",350); +*appear=9; +*disappear=13; break; case 1: memcpy(level,"10011111111dddd1111111111000111100000000000000000000011110011111111ddd100001111111001dd000ddddd111111111111001dd0t0ddddddddd11000001001dd000ddddddddd11000001001aaaaaaaaaaaaaa110s00010010000000000000e11d1100100100000000000aaa11111001001000000000ddddd1111100100100000000011111100010000010000000003000000001000001000K0000030k0001001111111111111111111111",350); break; case 2: -memcpy(level,"10001011111011111111111111000101dd10001111dddd11110000101dd10001000000000001111101dd1aaa1000ccccddd110s00010013331000000000011dddd110010001mmmdd00000100000000010e010t0dd00000011111100011111d1dddddd1111k00000001d000111001111111111111101d00000000000111000010000100000000000000010K010000100011100000011110001000010001110000dd1111000101111101111111111111",350); -*appear=5; -*disappear=9; +memcpy(level,"1dddddd100111111111111111000000000011111000000000000000000l01100c00000000001aaaaaaa111100c00000000011dddddddddd1001aaaaaaaaa11cccccccccc1001ddddddddd10000000000d1331000000aa000000000000s10e1k0000000001ccccccccc111111111113311100000000011001000000000110000000001100b0000000001100000000011t0b00000000011000K0000011111aaaaaaaaa1111111110011111ddddddddd1",350); +*appear=12; +*disappear=1; break; case 3: memcpy(level,"11001111111001111111111111000111dddd000000000100013000111dddd00000000010003300000000dd11111000010e03100000000dd03a01000011111111110000dd03a01000000001100s1dd00ddt3a0100000000110001dd00dd1110100000000110001dd0Kdd00001ddd000ddd10001dd00dd00001111100ddd10001dd00dd00001000000ddd30001dd0000000010k000000330001dd0000000010000000031d00111111100111111111111",350); break; case 4: -memcpy(level,"1dddddd100111111111111111000000000011111000000000000000000l01100c00000000001aaaaaaa111100c00000000011dddddddddd1001aaaaaaaaa11cccccccccc1001ddddddddd10000000000d1331000000aa000000000000s10e1k0000000001ccccccccc111111111113311100000000011001000000000110000000001100b0000000001100000000011t0b00000000011000K0000011111aaaaaaaaa1111111110011111ddddddddd1",350); +memcpy(level,"11111111111011111dddd1111100001dd0000dd100000000011s0001dd0d11dd10000000001111001dd0d111dd00111100011dd001dt0d10000001dd100011dd001d11d10000001dd100011dd00dd11110011111dd100011dd00000000001dddddd100011dd1111dbd1111ddd111100011ddddddd0dd1d1ddd100000011ddddddd0000d1ddd1e0000011ddddddd1110d1ddd111cccc11dddddddddd0d1ddd111dddd11111111111101111111111111",350); *appear=12; -*disappear=1; +*disappear=13; break; case 5: memcpy(level,"000000000000000000000000000000000000000000000000t000000000000000000000000000011dd111111111111111110000100000100000010000001000011cc001s0000d00000001000010000e111dd0100000dd100001001111000d0000000dd100001000001000111d000ddd1000010000000000000000ddd1000011111111111d111B1111100000000000000000000000000000000000000000000000000000000000000000000000000000",350); @@ -28,12 +28,12 @@ memcpy(level,"000000000000000000000000000000000000000000000000t00000000000000000 *disappear=6; break; case 6: -memcpy(level,"11111111111011111dddd1111100001dd0000dd100000000011s0001dd0d11dd10000000001111001dd0d111dd00111100011dd001dt0d10000001dd100011dd001d11d10000001dd100011dd00dd11110011111dd100011dd00000000001dddddd100011dd1111dbd1111ddd111100011ddddddd0dd1d1ddd100000011ddddddd0000d1ddd1e0000011ddddddd1110d1ddd111cccc11dddddddddd0d1ddd111dddd11111111111101111111111111",350); -*appear=12; -*disappear=13; +memcpy(level,"10001011111011111111111111000101dd10001111dddd11110000101dd10001000000000001111101dd1aaa1000ccccddd110s00010013331000000000011dddd110010001mmmdd00000100000000010e010t0dd00000011111100011111d1dddddd1111k00000001d000111001111111111111101d00000000000111000010000100000000000000010K010000100011100000011110001000010001110000dd1111000101111101111111111111",350); +*appear=5; +*disappear=9; break; case 7: -memcpy(level,"111001111111100d0d0011111100000111ddd000d0d0000001100000000000000dtd00000e1111111ddd111111111111111100000000000000000000d0000111111111dd111110100d000110001100000000010100d0001000011000000000d0d00d0000000000000000000d0d00d00001111dd111000000dld00111111000011111ddd00d0d0011111d000011111ddd00d0d0011111d0s0011111ddd00d0d0011111111001111111100d0d00111116",350); +memcpy(level,"111001111111100d0d0011111100000111ddd000d0d0000001100000000000000dtd00000e1111111ddd111111111111111100000000000000000h00d0000111111111dd111110100d000110001100000000010100d0001000011000000000i0d00d0000000000000000000i0d00d00001111dd111000000ild00111111000011111ddd00i0d0011111d000011111ddd00i0d0011111d0s0011111ddd00i0d0011111111001111111100i0d00111116",350); break; case 8: memcpy(level,"dddddddddddddddddddddddddBBBBBBBBBBBBBBBBBBBBBBBBB100001kk10011111dt0a000011000010010010000d11a00001100001BB100100000000000013000000000010001110000000300000000001aaaaaa0000000111111000001000000001111110dd00000001000000001000110000000a001BBBd00a0100013000000000010001000010003300s000000010K0100001e003aaBBBBBBBBBBBBBBBBBBBaaaaddddddddddddddddddddddddd",350); @@ -48,7 +48,7 @@ case 11: memcpy(level,"1ddddddddddd11dddddddddd11dddddddddd00000dd3aaa11i1dd111100000000000030000i1dd000000000001110003000i1d000001111100K000003000i1d00000S00k0000000003aBB110s000100000ddd011103atl11111331ddddddddddddddd1111ddd001dddddddd11d0S0ddd11ddd00d1dd11d000300000dd11ddd000000000000300000dd11dddaaa00000000d3S00e0dd11dddddd00S0d111d3d000ddd11ddddddddddddddddddddddd1",350); break; case 12: -memcpy(level,"111111111111111111111111110000ddd000010000000i0001100000t0000010000000i000110hhh111000010000000i000110000000000000000000i000110000000hhh000000000i000110000000000000000000i000110000S000S000S000S00i000110000000000000000000i0001100s0000000000000000i00011011100S000S000S000000001100000000000000000000000110000000000000000000000e11111111111111111111111111",350); +memcpy(level,"1111111111010001dd11111110000001000013331001000000000000100t01000h0010000001111iB111111000h0013311111e00ik11d111000300300000d10ddi011d0010003003000s0d10aai01000010001hh1hh11111000i01h1h1100010010000011dd0i000000h00010010001a11aa01dd0dd110001001000h0110001dd1d1110S0100100010110000S0S0001ddd100h0001Kd100000S0S001111100h00011111111dddd10h0001111111111",350); break; } set_gravity(id_level, gravity); @@ -72,7 +72,7 @@ case 1: *default_gravity = 0; break; case 2: -*default_gravity = 1; +*default_gravity = 0; break; case 3: *default_gravity = 1; @@ -84,7 +84,7 @@ case 5: *default_gravity = 0; break; case 6: -*default_gravity = 0; +*default_gravity = 1; break; case 7: *default_gravity = 0; diff --git a/src/times.c b/src/times.c index 99974d7..c68193c 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.38,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25,6.48}; +float level_time[] = {5.81,8.38,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25,6.48,11.94}; 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.38,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25,6.48}; +float level_time[] = {5.81,8.38,5.89,8.68,3.84,3.58,6.81,7.48,10.46,9.25,6.48,11.94}; time = level_time[id_level-1]; dimage(160,90,&img_createur); diff --git a/times.lvl b/times.lvl index 797977f..895efbf 100644 --- a/times.lvl +++ b/times.lvl @@ -8,4 +8,5 @@ 7.48 10.46 9.25 -6.48 \ No newline at end of file +6.48 +11.94