diff --git a/code/display.c b/code/display.c index 268fcd72bb7d89cf924c05fd5e12bd33c638cf16..376280a3c09d7828bb10300b3d58a79ad25d2ebf 100644 --- a/code/display.c +++ b/code/display.c @@ -166,6 +166,12 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour apply_text(renderer, 115 , 80, 20, 25, score, resources->font); apply_text(renderer, 5 , 105 , 100 , 25 ,"Meilleur score :", resources->font); apply_text(renderer, 115 , 105 , 20 , 25 ,highScore, resources->font); + + if(world->soldier.sprite.hp == 0) + { + apply_text(renderer, 400 , 400 , 200 , 50 ,"Perdu ! Votre score est de :", resources->font); + apply_text(renderer, 610 , 400 , 40, 50 ,score, resources->font); + } } @@ -317,47 +323,47 @@ void load_texture_idle_left(resources_t *resources, SDL_Renderer *renderer, worl void load_texture_jump_left(resources_t *resources, SDL_Renderer *renderer, world_t *world) { - if(world->soldier.jump_counter <= 7) + if(world->soldier.jump_counter <= 12) { SDL_RenderCopy(renderer, resources->soldier_jump_left[0], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 7 && world->soldier.jump_counter <= 14) + else if(world->soldier.jump_counter > 12 && world->soldier.jump_counter <= 24) { SDL_RenderCopy(renderer, resources->soldier_jump_left[1], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 14 && world->soldier.jump_counter <= 21) + else if(world->soldier.jump_counter > 24 && world->soldier.jump_counter <= 36) { SDL_RenderCopy(renderer, resources->soldier_jump_left[2], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 21 && world->soldier.jump_counter <= 28) + else if(world->soldier.jump_counter > 36 && world->soldier.jump_counter <= 48) { SDL_RenderCopy(renderer, resources->soldier_jump_left[3], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 28 && world->soldier.jump_counter <= 35) + else if(world->soldier.jump_counter > 48 && world->soldier.jump_counter <= 60) { SDL_RenderCopy(renderer, resources->soldier_jump_left[4], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 35 && world->soldier.jump_counter <= 42) + else if(world->soldier.jump_counter > 60 && world->soldier.jump_counter <= 72) { SDL_RenderCopy(renderer, resources->soldier_jump_left[5], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 42 && world->soldier.jump_counter <= 49) + else if(world->soldier.jump_counter > 72 && world->soldier.jump_counter <= 84) { SDL_RenderCopy(renderer, resources->soldier_jump_left[6], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 49 && world->soldier.jump_counter <= 56) + else if(world->soldier.jump_counter > 84 && world->soldier.jump_counter <= 96) { SDL_RenderCopy(renderer, resources->soldier_jump_left[7], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 56 && world->soldier.jump_counter <= 64) + else if(world->soldier.jump_counter > 96 && world->soldier.jump_counter <= 108) { SDL_RenderCopy(renderer, resources->soldier_jump_left[8], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 64 && world->soldier.jump_counter <= 73) + else if(world->soldier.jump_counter > 108 && world->soldier.jump_counter <= 120) { SDL_RenderCopy(renderer, resources->soldier_jump_left[9], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 73 && world->soldier.jump_counter <= 76) + else if(world->soldier.jump_counter > 120 && world->soldier.jump_counter <= 132) { SDL_RenderCopy(renderer, resources->soldier_jump_left[0], NULL, &world->soldier.DestSoldier); } @@ -498,47 +504,47 @@ void load_texture_run_left_enemy(resources_t *resources, SDL_Renderer *renderer, void load_texture_jump_right(resources_t *resources, SDL_Renderer *renderer, world_t *world) { - if(world->soldier.jump_counter <= 7) + if(world->soldier.jump_counter <= 12) { SDL_RenderCopy(renderer, resources->soldier_jump_right[0], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 7 && world->soldier.jump_counter <= 14) + else if(world->soldier.jump_counter > 12 && world->soldier.jump_counter <= 24) { SDL_RenderCopy(renderer, resources->soldier_jump_right[1], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 14 && world->soldier.jump_counter <= 21) + else if(world->soldier.jump_counter > 24 && world->soldier.jump_counter <= 36) { SDL_RenderCopy(renderer, resources->soldier_jump_right[2], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 21 && world->soldier.jump_counter <= 28) + else if(world->soldier.jump_counter > 36 && world->soldier.jump_counter <= 48) { SDL_RenderCopy(renderer, resources->soldier_jump_right[3], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 28 && world->soldier.jump_counter <= 35) + else if(world->soldier.jump_counter > 48 && world->soldier.jump_counter <= 60) { SDL_RenderCopy(renderer, resources->soldier_jump_right[4], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 35 && world->soldier.jump_counter <= 42) + else if(world->soldier.jump_counter > 60 && world->soldier.jump_counter <= 72) { SDL_RenderCopy(renderer, resources->soldier_jump_right[5], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 42 && world->soldier.jump_counter <= 49) + else if(world->soldier.jump_counter > 72 && world->soldier.jump_counter <= 84) { SDL_RenderCopy(renderer, resources->soldier_jump_right[6], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 49 && world->soldier.jump_counter <= 56) + else if(world->soldier.jump_counter > 84 && world->soldier.jump_counter <= 96) { SDL_RenderCopy(renderer, resources->soldier_jump_right[7], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 56 && world->soldier.jump_counter <= 64) + else if(world->soldier.jump_counter > 96 && world->soldier.jump_counter <= 108) { SDL_RenderCopy(renderer, resources->soldier_jump_right[8], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 64 && world->soldier.jump_counter <= 73) + else if(world->soldier.jump_counter > 108 && world->soldier.jump_counter <= 120) { SDL_RenderCopy(renderer, resources->soldier_jump_right[9], NULL, &world->soldier.DestSoldier); } - else if(world->soldier.jump_counter > 73 && world->soldier.jump_counter <= 76) + else if(world->soldier.jump_counter > 120 && world->soldier.jump_counter <= 132) { SDL_RenderCopy(renderer, resources->soldier_jump_right[0], NULL, &world->soldier.DestSoldier); } diff --git a/code/round_management.c b/code/round_management.c index e0885fbf28ce657dd46b6b313046d2c213a0dd3d..5f29003b3be18f8501a8b0808f477439414652e5 100644 --- a/code/round_management.c +++ b/code/round_management.c @@ -42,7 +42,7 @@ void updateRound(round_t *round) } } round->counter++; - if(round->counter == 50) + if(round->counter == 400) { round->counter = 0; } @@ -62,13 +62,11 @@ void nextRound(round_t *round) void createEnemies(round_t *round) { clearEnemies(round); - enemy_t *tab = (enemy_t*) malloc(round->number_enemies*sizeof(enemy_t)); - round->enemies = tab; + round->enemies = (enemy_t*) malloc(round->number_enemies*sizeof(enemy_t)); for (int i = 0; i < round->number_enemies; i++) { init_enemy(&round->enemies[i]); } - } void clearEnemies(round_t *round) diff --git a/code/soldier.c b/code/soldier.c index f3281c6c3804325ca202fbd1deb2521e16255c5d..6716ecdd5aff6f35581dd29de855a6ae789cb0fa 100644 --- a/code/soldier.c +++ b/code/soldier.c @@ -163,7 +163,7 @@ void jump(soldier_t *soldier){ if (soldier->state_jump == 1) { soldier->sprite.y -= V_SAUT; - if (soldier->sprite.y <= SCREEN_HEIGHT-SOLDIER_HEIGHT*2-150) + if (soldier->sprite.y <= SCREEN_HEIGHT-SOLDIER_HEIGHT*2-250) { soldier->state_jump = 2; } diff --git a/code/world_data.c b/code/world_data.c index 57c2c80f451d9ecc3222827daa56598d907eadc2..7a6fe8c2f8b132ff1bb60ab6e91136fbd6b31cee 100644 --- a/code/world_data.c +++ b/code/world_data.c @@ -109,7 +109,7 @@ void refresh_data(world_t *world) world->rounds.enemies[i].DestEnemy.x = world->rounds.enemies[i].sprite.x; world->rounds.enemies[i].DestEnemy.y = world->rounds.enemies[i].sprite.y; //Si l'ennemi touche le soldat - //enemy_touch_soldier(&world->rounds.enemies[i],&world->soldier,&world->score); + enemy_touch_soldier(&world->rounds.enemies[i],&world->soldier); enemy_dead(&world->rounds.enemies[i],&world->soldier,&world->score); } soldier_touch_powerUP(&world->rounds.enemies[i].powerUP,&world->soldier); diff --git a/data/save.txt b/data/save.txt index f2140de2dd4bfe96d8254c8c2ccea292a8a1645b..3eae60860670f526b2e804516fc367e1a49692a1 100644 --- a/data/save.txt +++ b/data/save.txt @@ -1,5 +1,5 @@ /Vie du joueur au début -15 +10 /Nombre d'ennemis au début 13 /Nombre d'ennemis en plus à chaque manche