No arribaràs al minut

 

Programador:

Albert Martínez

Instruccions:

Ets la pilota vermella. La teva missió és esquivar les pilotes blaves. Intenta arribar al màxim temps possible sense que et matin. Sort!

 


Codi:

/*
Albert Martínez Fernàndez No arribaràs al minut
*/

//variables globals

PImage backgr;
int Npilotatotal = 10;
int Npilotaactual = 5;
int contador = 0;
int contadorOver = 0;
float[] posicioX = new float[Npilotatotal];
float[] posicioY = new float[Npilotatotal];
float[] velX = new float [Npilotatotal];
float[] velY = new float [Npilotatotal];
float alpha;
float velocitat = 8;
boolean acabar = false;
int s = 0;
int m = 0;

void setup() {

int i;
//crear boles enemiges

size(550, 550);

backgr = loadImage(“galaxy.jpg”);

for (i=0; i<Npilotatotal; i++) {
posicioX[i] = random(0, 550);
}
for (i=0; i<Npilotatotal; i++) {
posicioY[i] = random(0, 550);
}
for (i=0; i<Npilotatotal; i++) {
velX[i] = random(-10, 10);
}
for (i=0; i<Npilotatotal; i++) {
velY[i] = random(-10, 10);
}
}

void draw() {

int i;
//reiniciar el joc quant perds
if (acabar) {
contadorOver ++;
background(0);
image (backgr, 0, 0);
textSize(32);
fill(255);
text(“GAME OVER”, 200, 275);
text(m+”:”+s, 100, 100);
if (contadorOver == 100) {
contador = 0;
Npilotaactual = 5;
s = 0;
m = 0;
for (i=0; i<Npilotatotal; i++) {
posicioX[i] = random(0, 550);
}
for (i=0; i<Npilotatotal; i++) {
posicioY[i] = random(0, 550);
}
for (i=0; i<Npilotatotal; i++) {
velX[i] = random(-10, 10);
}
for (i=0; i<Npilotatotal; i++) {
velY[i] = random(-10, 10);
}
acabar = false;
contadorOver = 0;
}
//creador del cronometre i de la teva pilota
} else if (!acabar) {
//boles

background(0);
image (backgr, 0, 0);
fill(#FA1212);
ellipse(mouseX, mouseY, 40, 40);
fill(255);
textAlign(100, 100);
textSize(15);
//delay(1000);
if (s<=59) {
text(m+”:”+s, 100, 100);
s = s + 1;
} else {
m = m + 1;
s = 0;
text(m+”:”+s, 100, 100);
}
//crear el moviment de les pilotes

for (i=0; i<Npilotaactual; i++) {
posicioX[i] = velX[i]+posicioX[i];
posicioY[i] = velY[i]+posicioY[i];
}

//rebot en pared
for (i=0; i<Npilotaactual; i++) {
if (posicioX[i]>550) {
velX[i]=velX[i]*(-1)+ random(-2, 2);
alpha = sqrt(sq(velX[i]) + sq(velY[i]));
velX[i] = velocitat*velX[i]/alpha;
velY[i] = velocitat*velY[i]/alpha;
}
if (posicioY[i]>550) {
velY[i]=velY[i]*(-1)+ random(-2, 2);
alpha = sqrt(sq(velX[i]) + sq(velY[i]));
velX[i] = velocitat*velX[i]/alpha;
velY[i] = velocitat*velY[i]/alpha;
}
if (posicioX[i]<0) {
velX[i]=velX[i]*(-1) + random(-2, 2);
alpha = sqrt(sq(velX[i]) + sq(velY[i]));
velX[i] = velocitat*velX[i]/alpha;
velY[i] = velocitat*velY[i]/alpha;
}
if (posicioY[i]<0) {
velY[i]=velY[i]*(-1)+ random(-2, 2);
alpha = sqrt(sq(velX[i]) + sq(velY[i]));
velX[i] = velocitat*velX[i]/alpha;
velY[i] = velocitat*velY[i]/alpha;
}
fill(#2303FC);

ellipse(posicioX[i], posicioY[i], 40, 40);

alpha = sqrt(sq(velX[i]) + sq(velY[i]));
}
//crear mes pilotes cada X temps
if ((contador == 600)|| (contador == 1200) || (contador == 1800) || (contador == 2400) || (contador == 3000) || (contador == 3600)) {
Npilotaactual=Npilotaactual + 1;
}
//mort de la teva pilota amb les enemiges
for (i=0; i<Npilotaactual; i++) {
if (dist(mouseX, mouseY, posicioX[i], posicioY[i]) < 40 ) {
i=25;
acabar = true;
}
}
contador ++;
}
}

//temporitzador del game over i del reinici del joc
void gameover() {
textSize(32);
fill(255);
text(“GAME OVER”, 200, 275);

}

1 Response

Deja un comentario