séance 6 - en groupe
avancée dans code - diversses modifications et ajouts :
_amélioration de la fin du jeu lorsque le carré sort de la grille de jeu
_Mise en place du titre du jeu "SNAKE" dans la fenetre de jeu et modification des caracteristiques du mot "PERDU"
_Mise en place de fonds differents pour la fenetre de jeu et la grille de jeu
Aujourd'hui, nous avons voulu afficher le mot "snake" dans la fenêtre de jeu, ainsi, on a décalé la grille vers les ordonnées en changeant les valeurs de 'x' et de 'y' en y ajoutant 30, pour la grille, et donc, aussi pour les coordonnées du carré, du cercle et des conditions de perte du jeu, comme ceci :
int x=170; // abscisse du carré
int y=170; // ordonnée du carré
...
int aleatoireX = (20* nombrex)+40 ; //le nombre aléatoire est multiplié par 20 et on y ajoute 40 pour qu'il soit entre 40 et 320 pour l'abscisse
int aleatoireY = (20* nombrey)+40 ; //le nombre aléatoire est multiplié par 20 et on y ajoute 40 pour qu'il soit entre 40 et 320 pour l'ordonnée
...
for(int i=0;i<=15;i++){ //lignes horizontales
line(30,i*ligneY+30,330,i*ligneY+30);
}
for(int i=0;i<=15;i++){ //lignes verticales
line(i*ligneX+30,30,i*ligneX+30,330);
}
...
if( x<30 || x>310 || y<30 || y>310 ) {
text("PERDU",120,180); //affiche "PERDU" si le carré sort du cadre
Puis, nous allions à mettre le code pour l'affichage du mot"snake", cependant, par hasard, on a voulu toucher aux conditions de perte du jeu pour que lorsque le carré sort de la grille de jeu, il s’arrête, et on a donc rajouté un morceau de code aux conditions :
if( x<0 || x>280 || y<30 || y>310 ) {
text("PERDU",90,180); //affiche "PERDU" si le carré sort du cadre
a = false; // si le carré dépasse la fenêtre de jeu, le carré s’arrête
b = false; // si le carré dépasse la fenêtre de jeu, le carré s’arrête
c = false; // si le carré dépasse la fenêtre de jeu, le carré s’arrête
d = false; // si le carré dépasse la fenêtre de jeu, le carré s’arrête
}
Ensuite, on a du déclaré une nouvelle police à utiliser, mais nous avons choisi la meme que celle déjà déclarée, en changeant la taille, dans le void draw :
PFont mapolice2; // créé une police de texte nommée mapolice2
mapolice2 = loadFont("EurostileBold-48.vlw"); // charge la police "EurostileBold-48" sur processing
textFont(mapolice2,30); // définit la police et la taille du texte
fill(0,200,0); // la couleur est rouge
text("SNAKE",120,25); // affiche snake pour x=120 et y=25
et pour :
if( x<30 || x>310 || y<30 || y>310 ) {
fill(200,0,0);
PFont mapolice1; // créé une police de texte nommée mapolice1
mapolice1 = loadFont("EurostileBold-48.vlw"); // charge la police "EurostileBold-48" sur processing
textFont(mapolice1,75); // définit la police et la taille du texte
text("PERDU",65,180); //affiche "PERDU" si le carré sort du cadre ... }
Enfin on a mis en place des fonds differents pour la fenetre de jeu et la grille de jeu :
background(100,100,100); // le fond est gris foncé
fill(150); // la couleur est gris clair
rect(30,30,300,300); // la grille est en gris clair
A présent, lorsque le carré sort de la grille de jeu, il s’arrête, le problème maintenant est que le jeu se bloque ainsi, il faudrait donc trouver le moyen de pouvoir le relancer par la suite, en attendant, le code actuel permet de faire cela :
(Publié par Mathieu)