mouvement 4
This commit is contained in:
parent
873bff0594
commit
7ffb44076d
@ -4,19 +4,32 @@
|
|||||||
#define CYCLE 10000L
|
#define CYCLE 10000L
|
||||||
|
|
||||||
/*variables*/
|
/*variables*/
|
||||||
|
|
||||||
|
/*timer*/
|
||||||
int seconde=0;
|
int seconde=0;
|
||||||
int minute=0;
|
int minute=0;
|
||||||
int seconde_actuel=0;
|
int seconde_actuel=0;
|
||||||
int old_seconde=0;
|
int old_seconde=0;
|
||||||
char timer[6];
|
char timer[6];
|
||||||
unsigned long int suivant;
|
unsigned long int suivant;
|
||||||
|
|
||||||
|
/*fin de jeu*/
|
||||||
int go_on=1;
|
int go_on=1;
|
||||||
|
|
||||||
|
/*serpent*/
|
||||||
int serpent;
|
int serpent;
|
||||||
int x = 600;
|
int x = 600;
|
||||||
int y = 400;
|
int y = 400;
|
||||||
int direction = 4; /*1 : vers le haut , 2 : vers le bas; 3 : vers la gauche, 4 : vers la droite*/
|
int direction = 4; /*1 : vers le haut , 2 : vers le bas; 3 : vers la gauche, 4 : vers la droite*/
|
||||||
int t;
|
int t;
|
||||||
|
|
||||||
|
int segment=5;
|
||||||
|
int i=0;
|
||||||
|
int pos_x[5];
|
||||||
|
int pos_y[5];
|
||||||
|
int old_x[5];
|
||||||
|
int old_y[5];
|
||||||
|
|
||||||
/*Fonction Pour créer la première scene du jeu*/
|
/*Fonction Pour créer la première scene du jeu*/
|
||||||
void DessinerScene(){
|
void DessinerScene(){
|
||||||
snprintf(timer,6,"%02d:%02d", minute, seconde);
|
snprintf(timer,6,"%02d:%02d", minute, seconde);
|
||||||
@ -25,7 +38,14 @@ void DessinerScene(){
|
|||||||
ChoisirCouleurDessin(CouleurParComposante(255,255,255));
|
ChoisirCouleurDessin(CouleurParComposante(255,255,255));
|
||||||
EcrireTexte(10,760,timer,2);
|
EcrireTexte(10,760,timer,2);
|
||||||
serpent=ChargerSprite("serpent.png");
|
serpent=ChargerSprite("serpent.png");
|
||||||
AfficherSprite(serpent, x, y);
|
|
||||||
|
for (i=0 ; i<segment ; i++){
|
||||||
|
AfficherSprite(serpent, x-(i*20), y);
|
||||||
|
pos_x[i]=x-(i*20);
|
||||||
|
pos_y[i]=y;
|
||||||
|
old_y[i]=pos_y[i];
|
||||||
|
old_x[i]=pos_x[i];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*Fonction pour mettre à jour unuquement le timer*/
|
/*Fonction pour mettre à jour unuquement le timer*/
|
||||||
@ -42,13 +62,24 @@ void Update_Timer(){
|
|||||||
void Update_Serpent(){
|
void Update_Serpent(){
|
||||||
ChoisirCouleurDessin(CouleurParComposante(141,199,63));
|
ChoisirCouleurDessin(CouleurParComposante(141,199,63));
|
||||||
RemplirRectangle(20,20,1160,700);
|
RemplirRectangle(20,20,1160,700);
|
||||||
AfficherSprite(serpent, x, y);
|
AfficherSprite(serpent, pos_x[0], pos_y[0]);
|
||||||
|
for (i=1 ; i<segment ; i++){
|
||||||
|
pos_x[i]=old_x[i-1];
|
||||||
|
pos_y[i]=old_y[i-1];
|
||||||
|
AfficherSprite(serpent, pos_x[i], pos_y[i]);
|
||||||
|
}
|
||||||
|
old_x[0]=pos_x[0];
|
||||||
|
old_y[0]=pos_y[0];
|
||||||
|
for (i=1 ; i<segment ; i++){
|
||||||
|
old_x[i]=pos_x[i];
|
||||||
|
old_y[i]=pos_y[i];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Terrain(){
|
void Terrain(){
|
||||||
if (x >1180 || x<20)
|
if (pos_x[0] >1180 || pos_x[0]<20)
|
||||||
go_on=0;
|
go_on=0;
|
||||||
if (y<0 || y >700)
|
if (pos_y[0]<0 || pos_y[0] >700)
|
||||||
go_on=0;
|
go_on=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -100,16 +131,16 @@ void Controle(){
|
|||||||
/*Avancement automatique du serpent en fonction de la direction*/
|
/*Avancement automatique du serpent en fonction de la direction*/
|
||||||
void Serpent(){
|
void Serpent(){
|
||||||
if (direction == 1){
|
if (direction == 1){
|
||||||
y=y-20;
|
pos_y[0]=old_y[0]-20;
|
||||||
}
|
}
|
||||||
if (direction == 2){
|
if (direction == 2){
|
||||||
y=y+20;
|
pos_y[0]=old_y[0]+20;
|
||||||
}
|
}
|
||||||
if (direction == 3){
|
if (direction == 3){
|
||||||
x=x-20;
|
pos_x[0]=old_x[0]-20;
|
||||||
}
|
}
|
||||||
if (direction == 4){
|
if (direction == 4){
|
||||||
x=x+20;
|
pos_x[0]=old_x[0]+20;
|
||||||
}
|
}
|
||||||
Update_Serpent();
|
Update_Serpent();
|
||||||
Terrain();
|
Terrain();
|
||||||
|
Loading…
Reference in New Issue
Block a user