Etat du code

  Snake en cours...

Sketch faisant apparaître un carré bleu et un cercle rouge de manière aléatoire:

int [] carreX=new int [1];

int [] carreY=new int [1];

int [] cercleX=new int [1];

int [] cercleY=new int [1];

void setup () {

size(400,400);

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

carreX [i]=(int) random (10,390);

carreY [i]=(int) random (10,390);

}

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

cercleX [i]=(int) random (10,390);

cercleY [i]=(int) random (10,390);

} }

void draw () {

background (#70DEAD);

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

rect(carreX[i],carreY[i],20,20);}

noStroke();

fill(#FA0A52);

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

ellipse(cercleX[i],cercleY[i],20,20;}

noStroke();

fill(#0A78FA);

}


Sketch faisant apparaître le quadrillage:

void setup () {

size (400,400);

}

void draw () {

background (#70DEAD);

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

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

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

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

}


Sketck du déplacement du carré dans le quadrillage et apparition du cercle :

int x=0;

int y=0;

int a=20;

int [] cercleX=new int [1];

int [] cercleY=new int [1];

void setup () {

size (400,400);

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

cercleX [i]=(int) random (20,390);

cercleY [i]=(int) random (20,390);

}

}

void draw (){

background (#70DEAD);

rect(x,y,20,20);

fill(#FA0A52);

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

ellipse(cercleX[i],cercleY[i],20,20);}

fill(#0A78FA);

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

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

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

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

}

void keyPressed(){

if(key==CODED)

{

if (keyCode==RIGHT){x=x+a;}

if (keyCode==LEFT){x=x-a;}

if (keyCode==UP){y=y-a;}

if (keyCode==DOWN){y=y+a;}

}

}


Sketch du tableau bidimentionnelle :

int l=20;

int c=20;

int [][] cases;

void setup () {

size (400,400);

cases = new int[l][c];

}

void draw () {

background (#70DEAD);

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

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

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

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

}

Sketch faisant apparaître le carré dans une case du quadrillage:

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

void setup () {
size (400,400); }

void draw (){
background (#70DEAD);

cerclex=20*cercle+10;
cercley=20*cercle+10;  }

Lignes pour faire apparaître le message "GAME OVER" :

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


Lignes de code pour faire apparaître le cercle à une autre position aléatoire lorsque le carré le touche :

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


Code final:

int carrey=0;

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

int cerclex = 0;

int cercley = 0;

int a=20;

int compteur=0;

int score=0;

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 () {

compteur++;

if(compteur==1){

background (#70DEAD);

positionActuelle();

dessinSnake();

anciennesPositions();

cerclex=20*cercle+10;

cercley=20*cercle+10;

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

line(0, i, 400, i);

}

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

line(z, 0, z, 400);

}

fill(#FA0A52);

ellipse(cerclex, cercley, 20, 20);

if (keyCode==LEFT) {

carrex=carrex-a;

compteur=0;

}

if (keyCode==RIGHT) {

carrex=carrex+a;

compteur=0;

}

if (keyCode==UP) {

carrey=carrey-a;

compteur=0;

}

if (keyCode==DOWN) {

carrey=carrey+a;

compteur=0;

}

if (carrex==cerclex-10 && carrey==cercley-10) {

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

score=score+1;

}

fill(0);

if (carrex>390) {

textSize(40);

text("GAME OVER", 90, 190);

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

text(score, 250, 250);

noLoop();

}

if (carrex<0) {

textSize(40);

text("GAME OVER", 90, 190);

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

text(score, 250, 250);

noLoop();

}

if (carrey>390) {

textSize(40);

text("GAME OVER", 90, 190);

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

text(score, 250, 250);

noLoop();

}

if (carrey<0) {

textSize(40);

text("GAME OVER", 90, 190);

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

text(score, 250, 250);

noLoop();

}

}

if(compteur==1) {compteur=0;}

}

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) {

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);

}

}

}

}

Code pour Iphone 5 :

int carrex=0;

int carrey=0;

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

int cerclex = 0;

int cercley = 0;

int a=20;

int compteur=0;

int score=0;

int l=16;

int c=19;

int [][] cases;


void setup () {

size (screen.width, screen.height);

frameRate(9);

cases = new int[l][c];

remplir_tableau();

}


void remplir_tableau() {

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

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

cases[i][j]=0;

}

}

}

void draw () {

compteur++;

if(compteur==1){

background (#70DEAD);

positionActuelle();

dessinSnake();

anciennesPositions();

fill(255);

rect(0,380,80,80);

rect(80,380,80,80);

rect(160,380,80,80);

rect(240,380,80,80);

fill(0);

textSize(10);

text("DROITE",20,423);

text("GAUCHE",100,423);

text("HAUT",185,423);

text("BAS",270,423);

cerclex=20*cercle+10;

cercley=20*cercle+10;

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

line(0, i, 320, i);

}

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

line(z, 0, z, 380);

}

fill(#FA0A52);

ellipse(cerclex, cercley, 20, 20);

if (mousePressed && mouseX<320 && mouseX<80){

carrex=carrex+a; compteur=0;}

if (mousePressed && mouseX<320 && mouseX<160 && mouseX>80){

carrex=carrex-a; compteur=0;}

if (mousePressed && mouseX<320 && mouseX<240 && mouseX>160){

carrey=carrey-a; compteur=0;}

if (mousePressed && mouseX<320 && mouseX<320 && mouseX>240) {

carrey=carrey+a; compteur=0;}

if (carrex==cerclex-10 && carrey==cercley-10) {

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

score=score+1;

}

fill(0);

if (carrex>300){ textSize(40); text("GAME OVER",40,200);

text("Score :",80,260);

text(score,220,260);

noLoop();

}

if (carrex<0) { textSize(40); text("GAME OVER",40,200);

text("Score :",80,260);

text(score,220,260);

noLoop();

}

if (carrey>360) { textSize(40); text("GAME OVER",40,200);

text("Score :",80,260);

text(score,220,260);

noLoop();

}

if (carrey<0) { textSize(40); text("GAME OVER",40,200);

text("Score :",80,260);

text(score,220,260);

noLoop();

}

}

if(compteur==1) {

compteur=0;}

}


void anciennesPositions() {

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

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

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

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

}

}

}

}


void positionActuelle(){

if (carrex/20<16) {

if (carrey/20<19) {

if (carrex/20>=0) {

if (carrey/20>=0) {

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

}

}

}

}

}


void dessinSnake(){

fill(#0A78FA);

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

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

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

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

}

}

}

}

© 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