6/02/17  

Avant cette séance nous avons télechargé Processing sur nos Iphone et Meryem a adapté le code afin de l'exécuter sur le portable. Sachant que le téléphone est tactile, il a fallu créer des carrés sur l'écran pour représenter les touches avec un carré pour chaque direction (droite, gauche, haut, bas). Voici le code:

int carrey=0;

int cercle = int(random (0,19));

int cerclex = 0;

int cercley = 0;

int a=20;

int compteur=0;

void setup() {

size(screen.width, screen.height);

frameRate(20);

}

void draw () {

background (#70DEAD);

compteur++;

if (compteur==50){compteur =0;

carrex=carrex+a;}

fill(#0A78FA);

rect(carrex,carrey,20,20);

fill(255);

rect(0,380,100,80);

rect(100,380,100,80);

rect(200,380,100,80);

rect(300,380,100,80);

fill(0);

textSize(20);

text("DROITE",15,423);

text("GAUCHE",110,423);

text("HAUT",223,423);

text("BAS",332,423);

cerclex=20*cercle+10;

cercley=20*cercle+10;

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

line(0, i,400,i);}

for (int z=0; z<400; z=z+20) {

line(z,0,z,380);}

if (carrex==cerclex-10 && carrey==cercley-10) {cercle = int(random (0,19)); }

fill(#FA0A52);

ellipse(cerclex,cercley,19,19);

if (mousePressed && mouseX<380 && mouseX<100){

carrex=carrex+a; compteur=0;}

if (mousePressed && mouseX<380 && mouseX<200 && mouseX>100){

carrex=carrex-a; compteur=0;}

if (mousePressed && mouseX<380 && mouseX<300 && mouseX>200){

carrey=carrey-a; compteur=0;}

if (mousePressed && mouseX<380 && mouseX<400 && mouseX>300) {

carrey=carrey+a; compteur=0;}

fill(0);

if (carrex>width){ textSize(40); text("GAMEOVER",90,200);}

if (carrex<0) { textSize(40); text("GAMEOVER",90,200);}

if (carrey>height) { textSize(40); text("GAMEOVER",90,200);}

if (carrey<0) { textSize(40); text("GAMEOVER",90,200);}

}

Pendant la séance, après de nombreuses recherches et tentatives, nous avons cherché dans des exemples de Processing puis sur internet un moyen de rajouter un carré à notre carré initial pour créer notre serpent, lorsque celui-ci touche le cercle (la pomme). Mais nous n'avons finalement pas trouvé de réponse à notre question à la fin de la séance. Nous y réfléchirons chez nous puis lors de la séance suivante.

Pendant que Meryem continuait les recherches, Ophélie a créé un score qui s'affiche et qui augmente de 1 lorsque le carré touche le cercle. Le score s'affiche lorsque la partie est perdu, le message "Game Over" s'affiche avec le score. Voici les lignes correspondantes:

int score=0;

// dans le draw

if (carrex==cerclex-10 && carrey==cercley-10) {cercle = int(random (0,19));

score=score+1;    }

fill(0);

textSize(20);

text(score,200,20);

fill(0);

if (carrex>400) { textSize(40); text("GAMEOVER",90,190);               text("Score:",120,250); text(score,250,250);    }

if (carrex<0) { textSize(40); text("GAMEOVER",90,190); text("Score:",120,250);text(score,250,250);    }

if (carrey>400) { textSize(40); text("GAMEOVER",90,190); text("Score:",120,250);text(score,250,250);    }

if (carrey<0) { textSize(40); text("GAMEOVER",90,190); text("Score:",120,250);text(score,250,250);    }

© 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