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

Ajout animation des zombies

parents 04a6e006 37ffcf0d
Branches
No related tags found
No related merge requests found
...@@ -59,11 +59,23 @@ ...@@ -59,11 +59,23 @@
*/ */
#define ENEMY_T4_HEIGHT 48 #define ENEMY_T4_HEIGHT 48
/** /**
* \brief Largeur de l'ennemie du type 4 * \brief Largeur de l'ennemie du type 4
*/ */
#define ENEMY_T4_WIDTH 38 #define ENEMY_T4_WIDTH 38
/**
* \brief Hauteur de l'ennemie du type 1
*/
#define ENEMY_T1_HEIGHT 86
/**
* \brief Largeur de l'ennemie du type 1
*/
#define ENEMY_T1_WIDTH 71
/** /**
* \brief Taille de l'avion de ravitaillement * \brief Taille de l'avion de ravitaillement
*/ */
......
...@@ -20,13 +20,6 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour ...@@ -20,13 +20,6 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour
//Fond //Fond
SDL_RenderCopy(renderer, resources->background, NULL, NULL); SDL_RenderCopy(renderer, resources->background, NULL, NULL);
//Aloocation des ressources ennemis lors d'une nouvelle manche
/*if(world->rounds.is_new_round == 1)
{
realloc_enemies_ressources(renderer,resources,world);
world->rounds.is_new_round = 0;
}*/
//Regarder vers le haut //Regarder vers le haut
if (world->soldier.sprite.is_visible == 1){ if (world->soldier.sprite.is_visible == 1){
...@@ -117,6 +110,7 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour ...@@ -117,6 +110,7 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour
load_texture_powerUp(resources, renderer, world); load_texture_powerUp(resources, renderer, world);
} }
if(world->gameover == 1) if(world->gameover == 1)
{ {
destroy_textures(resources,world); destroy_textures(resources,world);
...@@ -221,10 +215,6 @@ void init_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *wo ...@@ -221,10 +215,6 @@ 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->bullet = charger_image_transparente("../resources/SpriteBulletG.bmp", renderer, 255,0,255);
//resources->enemy = charger_image_transparente("../resources/Player/Right/IdleRight.bmp", renderer, 255,0,255);
//init_enemies_ressources(renderer,resources,world);
resources->powerUp = charger_image_transparente("../resources/PowerUp_Vitesse.bmp", renderer, 255,0,255); resources->powerUp = charger_image_transparente("../resources/PowerUp_Vitesse.bmp", renderer, 255,0,255);
resources->plane = charger_image_transparente("../resources/Plane.bmp", renderer, 255,0,255); resources->plane = charger_image_transparente("../resources/Plane.bmp", renderer, 255,0,255);
...@@ -232,34 +222,6 @@ void init_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *wo ...@@ -232,34 +222,6 @@ void init_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *wo
} }
/*void init_enemies_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *world)
{
resources->enemies = (SDL_Texture**) calloc(world->rounds.number_enemies,sizeof(SDL_Texture*));
for (int i = 0; i < world->rounds.number_enemies; i++)
{
resources->enemies[i] = charger_image_transparente("../resources/Player/Right/IdleRight.bmp", renderer, 255,0,255);
}
}
void realloc_enemies_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *world)
{
SDL_Texture* *tab = (SDL_Texture**) calloc(world->rounds.number_enemies,sizeof(SDL_Texture*));
free(resources->enemies);
//resources->enemies = NULL;
resources->enemies = tab;
//resources->enemies = (SDL_Texture**) realloc(resources->enemies,sizeof(SDL_Texture*)*world->rounds.number_enemies);
for (int i = 0; i < world->rounds.number_enemies; i++)
{
resources->enemies[i] = charger_image_transparente("../resources/Player/Right/IdleRight.bmp", renderer, 255,0,255);
}
}
void clear_enemies_ressources(resources_t *resources,int nbEnemies)
{
free(resources->enemies);
resources->enemies = NULL;
}*/
void destroy_textures(resources_t *resources, world_t *world) void destroy_textures(resources_t *resources, world_t *world)
{ {
...@@ -286,11 +248,6 @@ void destroy_textures(resources_t *resources, world_t *world) ...@@ -286,11 +248,6 @@ void destroy_textures(resources_t *resources, world_t *world)
SDL_DestroyTexture(resources->soldier_jump_left[i]); SDL_DestroyTexture(resources->soldier_jump_left[i]);
SDL_DestroyTexture(resources->soldier_jump_right[i]); SDL_DestroyTexture(resources->soldier_jump_right[i]);
} }
/*for (int i = 0; i < world->rounds.number_enemies; i++)
{
SDL_DestroyTexture(resources->enemies[i]);
}
clear_enemies_ressources(resources,world->rounds.number_enemies);*/
SDL_DestroyTexture(resources->bullet); SDL_DestroyTexture(resources->bullet);
SDL_DestroyTexture(resources->plane); SDL_DestroyTexture(resources->plane);
...@@ -560,16 +517,6 @@ void load_texture_crouch_right(resources_t *resources, SDL_Renderer *renderer, w ...@@ -560,16 +517,6 @@ void load_texture_crouch_right(resources_t *resources, SDL_Renderer *renderer, w
SDL_RenderCopy(renderer, resources->soldier_crouch_right, NULL, &world->soldier.DestSoldier); SDL_RenderCopy(renderer, resources->soldier_crouch_right, NULL, &world->soldier.DestSoldier);
} }
/*void load_texture_enemy(resources_t *resources, SDL_Renderer *renderer, world_t *world)
{
SDL_RenderCopy(renderer, resources->enemy, NULL, &world->enemy.DestEnemy);
}
void load_texture_enemies(resources_t *resources, SDL_Renderer *renderer, world_t *world, int i)
{
SDL_RenderCopy(renderer, resources->enemies[i], NULL, &world->rounds.enemies[i].DestEnemy);
}*/
void load_texture_powerUp(resources_t *resources, SDL_Renderer *renderer, world_t *world) void load_texture_powerUp(resources_t *resources, SDL_Renderer *renderer, world_t *world)
{ {
SDL_RenderCopy(renderer, resources->powerUp, NULL, &world->supplying.powerUP.DestPowerUP); SDL_RenderCopy(renderer, resources->powerUp, NULL, &world->supplying.powerUP.DestPowerUP);
......
...@@ -41,17 +41,17 @@ void init_enemyType1(enemy_t *enemy) ...@@ -41,17 +41,17 @@ void init_enemyType1(enemy_t *enemy)
int random = rand()%2+0; int random = rand()%2+0;
if (random == 1) if (random == 1)
{ {
init_sprite(&enemy->sprite, SCREEN_WIDTH+75, SCREEN_HEIGHT-ENEMY_HEIGHT*2-20, ENEMY_WIDTH, ENEMY_HEIGHT, ENEMY_SPEED, 1); init_sprite(&enemy->sprite, SCREEN_WIDTH+75, SCREEN_HEIGHT-ENEMY_T1_HEIGHT*2-20, ENEMY_T1_WIDTH, ENEMY_T1_HEIGHT, ENEMY_SPEED, 1);
enemy->direction = -1; enemy->direction = -1;
}else{ }else{
init_sprite(&enemy->sprite, -75, SCREEN_HEIGHT-ENEMY_HEIGHT*2-20, ENEMY_WIDTH, ENEMY_HEIGHT, ENEMY_SPEED, 1); init_sprite(&enemy->sprite, -75, SCREEN_HEIGHT-ENEMY_T1_HEIGHT*2-20, ENEMY_T1_WIDTH, ENEMY_T1_HEIGHT, ENEMY_SPEED, 1);
enemy->direction = 1; enemy->direction = 1;
} }
enemy->type = 1; enemy->type = 1;
enemy->DestEnemy.x = enemy->sprite.x; enemy->DestEnemy.x = enemy->sprite.x;
enemy->DestEnemy.y = enemy->sprite.y; enemy->DestEnemy.y = enemy->sprite.y;
enemy->DestEnemy.w = ENEMY_WIDTH; enemy->DestEnemy.w = ENEMY_T1_WIDTH;
enemy->DestEnemy.h = ENEMY_HEIGHT; enemy->DestEnemy.h = ENEMY_T1_HEIGHT;
} }
void init_enemyType2(enemy_t *enemy) void init_enemyType2(enemy_t *enemy)
...@@ -61,6 +61,7 @@ void init_enemyType2(enemy_t *enemy) ...@@ -61,6 +61,7 @@ void init_enemyType2(enemy_t *enemy)
{ {
init_sprite(&enemy->sprite, SCREEN_WIDTH+75, SCREEN_HEIGHT-ENEMY_HEIGHT*2-20, ENEMY_WIDTH, ENEMY_HEIGHT, ENEMY_T2_SPEED, 2); init_sprite(&enemy->sprite, SCREEN_WIDTH+75, SCREEN_HEIGHT-ENEMY_HEIGHT*2-20, ENEMY_WIDTH, ENEMY_HEIGHT, ENEMY_T2_SPEED, 2);
enemy->direction = -1; enemy->direction = -1;
}else{ }else{
init_sprite(&enemy->sprite, -75, SCREEN_HEIGHT-ENEMY_HEIGHT*2-20, ENEMY_WIDTH, ENEMY_HEIGHT,ENEMY_T2_SPEED, 2); init_sprite(&enemy->sprite, -75, SCREEN_HEIGHT-ENEMY_HEIGHT*2-20, ENEMY_WIDTH, ENEMY_HEIGHT,ENEMY_T2_SPEED, 2);
enemy->direction = 1; enemy->direction = 1;
......
...@@ -43,4 +43,4 @@ void init_enemyType3(enemy_t *enemy); ...@@ -43,4 +43,4 @@ void init_enemyType3(enemy_t *enemy);
void init_enemyType4(enemy_t *enemy); void init_enemyType4(enemy_t *enemy);
#endif #endif
\ No newline at end of file
...@@ -82,7 +82,7 @@ int main(void) ...@@ -82,7 +82,7 @@ int main(void)
SDL_RenderPresent(renderer); SDL_RenderPresent(renderer);
} }
// Quitter SDL // Quitter SDL
//destroy_textures(&resources,&world); destroy_textures(&resources,&world);
SDL_DestroyRenderer(renderer); SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window); SDL_DestroyWindow(window);
SDL_Quit(); SDL_Quit();
......
...@@ -24,7 +24,7 @@ void initFirstRound(round_t *round, int nbEnemies, int incrementation) ...@@ -24,7 +24,7 @@ void initFirstRound(round_t *round, int nbEnemies, int incrementation)
round->index_to_spawn = 0; round->index_to_spawn = 0;
round->is_new_round = 0; round->is_new_round = 0;
//round->gameFinished = 0; //round->gameFinished = 0;
round->enemies = (enemy_t*) calloc(round->number_enemies,sizeof(enemy_t)); round->enemies = (enemy_t*) malloc(round->number_enemies*sizeof(enemy_t));
for (int i = 0; i < round->number_enemies; i++) for (int i = 0; i < round->number_enemies; i++)
{ {
init_enemy(&round->enemies[i]); init_enemy(&round->enemies[i]);
...@@ -77,7 +77,7 @@ void createEnemies(round_t *round) ...@@ -77,7 +77,7 @@ void createEnemies(round_t *round)
{ {
//round->enemies = (enemy_t*) realloc(round->enemies,sizeof(enemy_t)*round->number_enemies); //round->enemies = (enemy_t*) realloc(round->enemies,sizeof(enemy_t)*round->number_enemies);
enemy_t *tab = (enemy_t*) calloc(round->number_enemies,sizeof(enemy_t)); enemy_t *tab = (enemy_t*) malloc(round->number_enemies*sizeof(enemy_t));
free(round->enemies); free(round->enemies);
//round->enemies = NULL; //round->enemies = NULL;
round->enemies = tab; round->enemies = tab;
......
...@@ -90,10 +90,7 @@ void refresh_data(world_t *world) ...@@ -90,10 +90,7 @@ void refresh_data(world_t *world)
//Si la manche est finie, manche suivante //Si la manche est finie, manche suivante
if(isRoundEnded(&world->rounds) == 1) if(isRoundEnded(&world->rounds) == 1)
{ {
//free(world->rounds.enemies);
nextRound(&world->rounds); nextRound(&world->rounds);
//printf("gg ta gagné");
//Charger le bon nombre de texture
} }
//Sinon si la manche n'est pas finie //Sinon si la manche n'est pas finie
else else
......
/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
23 8
/Nombre d'ennemis en plus à chaque manche /Nombre d'ennemis en plus à chaque manche
1 1
/Nombre de balles /Nombre de balles
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment