#include #include #include #include #include "../Graphique/libgraph.h" #include "../ListeC/Liste.h" #include "../Monstre/Monstre.h" #include "../Interactif/Interactif.h" #include "init.h" #define TailleX 500 #define TailleY 500 #define Sol 475 #define ErreurHitbox 2 int main() { creerSurface(TailleX,TailleY,Nom); initialiser(); struct liste_entite *enemies = NULL; struct liste_entite *tires = NULL; struct liste_entite *bombes = NULL; char texte[15]="SCORE : "; int Score = lutinTexte(texte,COULEUR_BLANC); LigneSbire(&enemies,8,3); int SensVague=1; int compteur=0; int DropAlea=0; int CheckAlea=0; if (pagedemarrage() != 'j') { return 0; } //Bouble principale while(input!='m') { rectanglePlein(0,0,TailleX,TailleY,COULEUR_NOIR); rectanglePlein(0,Sol,TailleX,2,COULEUR_VERT); afficherLutin(Score,0,Sol+ErreurHitbox); afficherLutin(canon,joueur.posx - hitboxcanonL/2 + ErreurHitbox,joueur.posy); if (DropAlea == 0) { DropAlea = rand() % 31 + 100; } if (CheckAlea == DropAlea) { MakeBombeDroppable(enemies,&bombes); DropAlea=0; CheckAlea=0; } AfficherSbire(sbire,hitboxsbireL,hitboxsbireH,enemies); input = touche(); action(&joueur,input,&tires); if (compteur==10) { DeplacementSbire(enemies,&SensVague,1); compteur=0; } DeplacementTire(missile,&tires); DeplacementBombe(bombe,&bombes); SupprimerEntitesEnCollision(&tires,hitboxmissileL,hitboxmissileH,&enemies,hitboxsbireL,hitboxsbireH); majSurface(); SDL_Delay(20); compteur+=1; CheckAlea+=1; } return 0; }