SAE11_2023/JEUX_SERPENT/scene.c

81 lines
2.4 KiB
C

#include <stdlib.h>
#include <stdio.h>
#include <graph.h>
#include <time.h>
#include <unistd.h>
#include "fonction.h"
void Terrain(){
if (pos_x[0] >1160 || pos_x[0]<20)
go_on=0;
if (pos_y[0]<20 || pos_y[0] >680)
go_on=0;
}
/*Fonction Pour créer la première scene du jeu*/
void DessinerScene(){
snprintf(timer,6,"%02d:%02d", minute, seconde);
ChoisirCouleurDessin(CouleurParComposante(5,130,4));
RemplirRectangle(20,20,1160,680);
ChoisirCouleurDessin(CouleurParComposante(255,255,255));
EcrireTexte(10,760,timer,2);
serpent=ChargerSprite("IMG/serpent.png");
fond=ChargerSprite("IMG/fond.png");
tete_up = ChargerSprite("IMG/tete_up.png");
tete_down =ChargerSprite("IMG/tete_down.png");
tete_left = ChargerSprite("IMG/tete_left.png");
tete_right = ChargerSprite("IMG/tete_right.png");
queue_up = ChargerSprite("IMG/queue_up.png");
queue_down = ChargerSprite("IMG/queue_down.png");
queue_left = ChargerSprite("IMG/queue_left.png");
queue_right = ChargerSprite("IMG/queue_right.png");
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];
}
srand(time(NULL));
pomme=ChargerSprite("IMG/pomme.png");
for (p = 0; p < 5; p++) {
pommex[p] = ((rand() % (58)+1)*20);
pommey[p] = ((rand() % (34)+1)*20);
AfficherSprite(pomme, pommex[p], pommey[p]);
}
}
/*création du menu d'accueil*/
void MenuDebut(){
imageMenu=ChargerSprite("IMG/menu1.png");
AfficherSprite(imageMenu,0,0);
EcrireTexte(450,100,"JEU DU SERPENT",2);
EcrireTexte(410,500,"Appuyer sur Q pour quitter",2);
EcrireTexte(290,400,"Appuyer sur Fleche de Droite pour lancer le jeu",2);
}
/*création du Menu de Fin*/
void MenuDeFin(){
EffacerEcran(CouleurParComposante(0,0,0));
imageMenu=ChargerSprite("IMG/menu1.png");
AfficherSprite(imageMenu,0,0);
ChoisirCouleurDessin(CouleurParComposante(0,0,0));
EcrireTexte(500,100,"Game Over", 2);
snprintf(score,15,"Score : %04d", Nbr);
EcrireTexte(500,200,score,2);
snprintf(timer,14,"Temps : %02d:%02d", minute, seconde);
EcrireTexte(490,300,timer,2);
EcrireTexte(410,500,"Appuyer sur Q pour quitter",2);
/*EcrireTexte(350,600,"Appuyer sur R pour relancer une partie",2);*/
}
/*Apparition aléatoire des pommes*/
void Pomme(){
for (pp = 0; pp < 5; ++pp) {
AfficherSprite(pomme, pommex[pp], pommey[pp]);
}
}