Skip to content
Snippets Groups Projects
Commit f42a35db authored by bohan2u's avatar bohan2u
Browse files

Spawn power up quand un ennemie meurt

parent 46ecb9c0
Branches
No related tags found
No related merge requests found
Showing
with 42 additions and 19 deletions
......@@ -10,7 +10,7 @@
/**
* \brief Largeur de l'écran de jeu
*/
#define SCREEN_WIDTH 800
#define SCREEN_WIDTH 1000
/**
* \brief Hauteur de l'écran de jeu
......@@ -52,7 +52,7 @@
/**
* \brief Largeur de l'ennemie
*/
#define ENEMY_WIDTH 78
#define ENEMY_WIDTH 58
/**
* \brief Hauteur de l'ennemie du type 4
......
......@@ -113,14 +113,27 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour
load_texture_run_left_enemy(resources, renderer, &world->rounds.enemies[i]);
}
}
if (world->rounds.enemies[i].sprite.is_visible == 0 && world->rounds.enemies[i].drop == 1)
{
if (world->rounds.enemies[i].powerUP.sprite.is_visible == 1 && world->rounds.enemies[i].powerUP.type == 0)
{
load_texture_powerUp_type0(resources, renderer, &world->rounds.enemies[i].powerUP);
}else if (world->rounds.enemies[i].powerUP.sprite.is_visible == 1 && world->rounds.enemies[i].powerUP.type == 1){
load_texture_powerUp_type1(resources, renderer, &world->rounds.enemies[i].powerUP);
}
}
}
if (world->supplying.plane.is_visible == 1){
load_texture_plane(resources, renderer, world);
}else{
if (world->supplying.powerUP.sprite.is_visible == 1 && world->supplying.powerUP.type == 0){
load_texture_powerUp_type0(resources, renderer, &world->supplying.powerUP);
}else{
load_texture_powerUp_type1(resources, renderer, &world->supplying.powerUP);
}
}
if (world->supplying.powerUP.sprite.is_visible == 1){
load_texture_powerUp(resources, renderer, world);
}
if(world->gameover == 1)
......@@ -227,7 +240,8 @@ void init_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *wo
resources->bullet = charger_image_transparente("../resources/SpriteBulletG.bmp", renderer, 255,0,255);
resources->powerUp = charger_image_transparente("../resources/PowerUp_Vitesse.bmp", renderer, 255,0,255);
resources->powerUp[0] = charger_image_transparente("../resources/PowerUp_Vitesse.bmp", renderer, 255,0,255);
resources->powerUp[1] = charger_image_transparente("../resources/PowerUp_Sante.bmp", renderer, 255,0,255);
resources->plane = charger_image_transparente("../resources/Plane.bmp", renderer, 255,0,255);
resources->font = load_font("../resources/arial.ttf",14);
......@@ -263,7 +277,8 @@ void destroy_textures(resources_t *resources, world_t *world)
SDL_DestroyTexture(resources->bullet);
SDL_DestroyTexture(resources->plane);
SDL_DestroyTexture(resources->powerUp);
SDL_DestroyTexture(resources->powerUp[0]);
SDL_DestroyTexture(resources->powerUp[1]);
clean_font(resources->font);
}
......@@ -529,9 +544,14 @@ void load_texture_crouch_right(resources_t *resources, SDL_Renderer *renderer, w
SDL_RenderCopy(renderer, resources->soldier_crouch_right, NULL, &world->soldier.DestSoldier);
}
void load_texture_powerUp(resources_t *resources, SDL_Renderer *renderer, world_t *world)
void load_texture_powerUp_type0(resources_t *resources, SDL_Renderer *renderer, powerUP_t *powerUP)
{
SDL_RenderCopy(renderer, resources->powerUp[0], NULL, &powerUP->DestPowerUP);
}
void load_texture_powerUp_type1(resources_t *resources, SDL_Renderer *renderer, powerUP_t *powerUP)
{
SDL_RenderCopy(renderer, resources->powerUp, NULL, &world->supplying.powerUP.DestPowerUP);
SDL_RenderCopy(renderer, resources->powerUp[1], NULL, &powerUP->DestPowerUP);
}
void load_texture_plane(resources_t *resources, SDL_Renderer *renderer, world_t *world)
......
......@@ -33,8 +33,7 @@ struct resources_s
SDL_Texture* enemyT2_run_right[10];
SDL_Texture* enemyT3_run_left[10];
SDL_Texture* enemyT3_run_right[10];
SDL_Texture* *enemies;
SDL_Texture* powerUp;
SDL_Texture* powerUp[2];
SDL_Texture* plane;
SDL_Texture* bullet; /*!< resources liée à l'image des balles. */
......@@ -91,7 +90,9 @@ void load_texture_jump_right(resources_t *resources, SDL_Renderer *renderer, wor
//void load_texture_enemies(resources_t *resources, SDL_Renderer *renderer, world_t *world, int i);
void load_texture_powerUp(resources_t *resources, SDL_Renderer *renderer, world_t *world);
void load_texture_powerUp_type0(resources_t *resources, SDL_Renderer *renderer, powerUP_t *powerUP);
void load_texture_powerUp_type1(resources_t *resources, SDL_Renderer *renderer, powerUP_t *powerUP);
void load_texture_plane(resources_t *resources, SDL_Renderer *renderer, world_t *world);
......
......@@ -64,11 +64,11 @@ void set_invisible(sprite_t *sprite)
int sprites_collide(sprite_t *sp2, sprite_t *sp1)
{
if(sqrt((sp1->x - sp2->x)*(sp1->x - sp2->x)+(sp1->y - sp2->y)*(sp1->y - sp2->y)) <= (sp1->h + sp2->h) /2)
if((sp2->x >= sp1->x + sp1->w) || (sp2->x + sp2->w <= sp1->x) || (sp2->y >= sp1->y + sp1->h) || (sp2->y + sp2->h <= sp1->y))
{
return 1;
return 0;
}
return 0;
return 1;
}
void handle_sprites_collision(sprite_t *sp1, sprite_t *sp2)
......
......@@ -122,6 +122,8 @@ void refresh_data(world_t *world)
//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);
apply_effect(&world->rounds.enemies[i].powerUP,&world->soldier,world->rounds.enemies[i].drop);
}
}
......
/Vie du joueur au début
10
20
/Nombre d'ennemis au début
22
26
/Nombre d'ennemis en plus à chaque manche
1
/Numéro de la manche
34
38
/Meilleur score
78
82
resources/SpriteZombie/Left/Type1/0.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/0.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/0.bmp
resources/SpriteZombie/Left/Type1/0.bmp
resources/SpriteZombie/Left/Type1/0.bmp
resources/SpriteZombie/Left/Type1/0.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/1.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/1.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/1.bmp
resources/SpriteZombie/Left/Type1/1.bmp
resources/SpriteZombie/Left/Type1/1.bmp
resources/SpriteZombie/Left/Type1/1.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/2.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/2.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/2.bmp
resources/SpriteZombie/Left/Type1/2.bmp
resources/SpriteZombie/Left/Type1/2.bmp
resources/SpriteZombie/Left/Type1/2.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/3.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/3.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/3.bmp
resources/SpriteZombie/Left/Type1/3.bmp
resources/SpriteZombie/Left/Type1/3.bmp
resources/SpriteZombie/Left/Type1/3.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/4.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/4.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/4.bmp
resources/SpriteZombie/Left/Type1/4.bmp
resources/SpriteZombie/Left/Type1/4.bmp
resources/SpriteZombie/Left/Type1/4.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/5.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/5.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/5.bmp
resources/SpriteZombie/Left/Type1/5.bmp
resources/SpriteZombie/Left/Type1/5.bmp
resources/SpriteZombie/Left/Type1/5.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/6.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/6.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/6.bmp
resources/SpriteZombie/Left/Type1/6.bmp
resources/SpriteZombie/Left/Type1/6.bmp
resources/SpriteZombie/Left/Type1/6.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/7.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/7.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/7.bmp
resources/SpriteZombie/Left/Type1/7.bmp
resources/SpriteZombie/Left/Type1/7.bmp
resources/SpriteZombie/Left/Type1/7.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/8.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/8.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/8.bmp
resources/SpriteZombie/Left/Type1/8.bmp
resources/SpriteZombie/Left/Type1/8.bmp
resources/SpriteZombie/Left/Type1/8.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type1/9.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type1/9.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type1/9.bmp
resources/SpriteZombie/Left/Type1/9.bmp
resources/SpriteZombie/Left/Type1/9.bmp
resources/SpriteZombie/Left/Type1/9.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type2/0.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type2/0.bmp

549 KiB | W: | H:

resources/SpriteZombie/Left/Type2/0.bmp
resources/SpriteZombie/Left/Type2/0.bmp
resources/SpriteZombie/Left/Type2/0.bmp
resources/SpriteZombie/Left/Type2/0.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type2/1.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type2/1.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type2/1.bmp
resources/SpriteZombie/Left/Type2/1.bmp
resources/SpriteZombie/Left/Type2/1.bmp
resources/SpriteZombie/Left/Type2/1.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type2/2.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type2/2.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type2/2.bmp
resources/SpriteZombie/Left/Type2/2.bmp
resources/SpriteZombie/Left/Type2/2.bmp
resources/SpriteZombie/Left/Type2/2.bmp
  • 2-up
  • Swipe
  • Onion skin
resources/SpriteZombie/Left/Type2/3.bmp

655 KiB | W: | H:

resources/SpriteZombie/Left/Type2/3.bmp

535 KiB | W: | H:

resources/SpriteZombie/Left/Type2/3.bmp
resources/SpriteZombie/Left/Type2/3.bmp
resources/SpriteZombie/Left/Type2/3.bmp
resources/SpriteZombie/Left/Type2/3.bmp
  • 2-up
  • Swipe
  • Onion skin
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment