13/02/2017 

Avant la séance l'aujourd'hui, après de longues et mûres réflexions avec notre professeur, nous avons afin trouvé le moyen de comprendre le tableau à deux dimentions et l'avons utilisé pour faire grandir notre serpent lorsqu'il mange une pomme. Ainsi, lorsque le premier carré (qui représente la tête du serpent) touche le cercle (qui représente la pomme), un carré s'ajoute derrière le premier, et ainsi de suite. Voici les ligne qui correspondent :

int l=20;

int c=20;

int [][] cases;

void setup () {

size (400, 400);

frameRate(10);

cases = new int[l][c];

remplir_tableau();

}

void remplir_tableau() {

for (int i=0; i<20; i=i+1) {

for (int j=0; j<20; j=j+1) {

cases[i][j]=0;

} } }

void draw () {

positionActuelle();

dessinSnake();

anciennesPositions(); }

void anciennesPositions() {

for (int i=0; i<20; i=i+1) {

for (int j=0; j<20; j=j+1) {

if(cases[i][j]!=0){

cases[i][j]=cases[i][j]-1;print(cases[i][j]);

} } }

println();

}

void positionActuelle(){

if (carrex/20<20) {

if (carrey/20<20) {

if (carrex/20>=0) {

if (carrey/20>=0) {

// print(carrex/20);

// println(carrey/20);

cases[carrex/20][carrey/20]=1000;

} } } } }

void dessinSnake(){

fill(#0A78FA );

for (int i=0; i<20; i=i+1) {

for (int j=0; j<20; j=j+1) {

if(cases[i][j]>=1000-score){

rect(20*i, 20*j, 20, 20);

} } } }


Durant la séance, Ophélie était absente, et Meryem à trouvé le moyen de stoper le jeu lorsque le joueur à perdu, et pas seulement afficher le message "GameOver", grâce à la fonction noLoop() qui permet d'arrêter l'execution du code. Elle a donc rajouté cette fonction dans toutes les boucles nécéssaires. Elle a ensuite cherché un moyen d'afficher à nouveau le message "GameOver" lorsque la tête du serpent touche son corps, mais elle n'a pas encore réussi, car lorsque le serpent contient trois carré le jeu affiche automatiquement le message "GameOver", et non lorsque le serpent touche son corps. Voici le début du code correspondant :

for (int i=0; i<20; i=i+1) {

for (int j=0; j<20; j=j+1) {

if(cases[i][j]>(1000-score)) {

textSize(40);

text("GAMEOVER", 90, 190);

text("Score:", 120, 250);

text(score, 250, 250);

noLoop();

} } }

© 2016/2017 Spécialité ISN Lycée Bernard Palissy, Agen
Optimisé par Webnode
Créez votre site web gratuitement ! Ce site internet a été réalisé avec Webnode. Créez le votre gratuitement aujourd'hui ! Commencer