Skip to content
Snippets Groups Projects
Commit c9a58e52 authored by suck5u's avatar suck5u
Browse files

Correction de la direction des balles après rechargement

parent fc53b2f6
No related branches found
No related tags found
No related merge requests found
...@@ -36,7 +36,14 @@ void init_bullet(soldier_t *soldier) ...@@ -36,7 +36,14 @@ void init_bullet(soldier_t *soldier)
init_sprite(&soldier->charger[i].sprite, -10, -10, BULLET_WIDTH, BULLET_WIDTH, BULLET_SPEED,1); init_sprite(&soldier->charger[i].sprite, -10, -10, BULLET_WIDTH, BULLET_WIDTH, BULLET_SPEED,1);
set_invisible(&soldier->charger[i].sprite); set_invisible(&soldier->charger[i].sprite);
soldier->charger[i].shoot = 0; soldier->charger[i].shoot = 0;
soldier->charger[i].sens = soldier->charger[29].sens; //soldier->charger[i].sens = soldier->charger[29].sens;
if(soldier->is_looking_up == 1)
soldier->charger[i].sens = 'h';
else if(soldier->direction == 1)
soldier->charger[i].sens = 'd';
else if(soldier->direction == -1)
soldier->charger[i].sens = 'g';
soldier->DestBullet[i].x = soldier->charger[i].sprite.x; soldier->DestBullet[i].x = soldier->charger[i].sprite.x;
soldier->DestBullet[i].y = soldier->charger[i].sprite.y; soldier->DestBullet[i].y = soldier->charger[i].sprite.y;
soldier->DestBullet[i].w = BULLET_WIDTH; soldier->DestBullet[i].w = BULLET_WIDTH;
...@@ -85,7 +92,8 @@ void shoot(soldier_t *soldier){ ...@@ -85,7 +92,8 @@ void shoot(soldier_t *soldier){
{ {
if(soldier->direction == 1) if(soldier->direction == 1)
soldier->charger[soldier->present_bullet].sprite.x = soldier->sprite.x+SOLDIER_WIDTH/2-2; soldier->charger[soldier->present_bullet].sprite.x = soldier->sprite.x+SOLDIER_WIDTH/2-2;
else{ else
{
soldier->charger[soldier->present_bullet].sprite.x = soldier->sprite.x+30; soldier->charger[soldier->present_bullet].sprite.x = soldier->sprite.x+30;
} }
soldier->charger[soldier->present_bullet].sprite.y = ORDERED_BULLET-SOLDIER_HEIGHT+15; soldier->charger[soldier->present_bullet].sprite.y = ORDERED_BULLET-SOLDIER_HEIGHT+15;
...@@ -122,13 +130,18 @@ void shoot(soldier_t *soldier){ ...@@ -122,13 +130,18 @@ void shoot(soldier_t *soldier){
void shootAfterE(soldier_t *soldier){ void shootAfterE(soldier_t *soldier){
for (int i = 0; i < NB_BULLET; ++i) for (int i = 0; i < NB_BULLET; ++i)
{ {
if (soldier->charger[i].shoot == 1 && over_right(&soldier->charger[i].sprite) == 0 && over_left(&soldier->charger[i].sprite) == 0 ){ if (soldier->charger[i].shoot == 1 && over_right(&soldier->charger[i].sprite) == 0 && over_left(&soldier->charger[i].sprite) == 0 )
if (soldier->charger[i].sens == 'd'){ {
if (soldier->charger[i].sens == 'd')
{
soldier->charger[i].sprite.x += soldier->charger[i].sprite.v; soldier->charger[i].sprite.x += soldier->charger[i].sprite.v;
}else if (soldier->charger[i].sens == 'g') }
else if (soldier->charger[i].sens == 'g')
{ {
soldier->charger[i].sprite.x -= soldier->charger[i].sprite.v; soldier->charger[i].sprite.x -= soldier->charger[i].sprite.v;
}else{ }
else
{
soldier->charger[i].sprite.y -= soldier->charger[i].sprite.v; soldier->charger[i].sprite.y -= soldier->charger[i].sprite.v;
} }
//print_sprite(&soldier->charger[i].sprite); //print_sprite(&soldier->charger[i].sprite);
......
...@@ -213,7 +213,7 @@ void handle_events(SDL_Event *event,world_t *world) ...@@ -213,7 +213,7 @@ void handle_events(SDL_Event *event,world_t *world)
save_game(world); save_game(world);
//Libère la mémoire du tableau DestBullet pour l'affichage //Libère la mémoire du tableau DestBullet pour l'affichage
free(world->soldier.DestBullet); free(world->soldier.DestBullet);
clearEnemies(&world->rounds); //clearEnemies(&world->rounds);
world->gameover = 1; world->gameover = 1;
} }
......
/Vie du joueur au début /Vie du joueur au début
10 10
/Nombre d'ennemis au début /Nombre d'ennemis au début
15 11
/Nombre d'ennemis en plus à chaque manche /Nombre d'ennemis en plus à chaque manche
5 3
/Nombre de balles /Nombre de balles
30 30
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment