xxxxxxxxxx
int pX = 300; //Coordenada x del punt de mira.
int pY = 300; //Coordenada y del punt de mira.
int gX, gY; //Coordenades del globus.
int p = 0; //Punt.
PImage globus;
PImage mira;
PImage cel;//Declarem les imatges.
void setup(){
size (600,600); //Finestra de dibuix.
globus = loadImage("globus.png"); //Carreguem les imatges.
mira = loadImage("mira.png");
cel = loadImage("cel.jpg");
new_globus(); //Definim un nou globus.
}
void draw(){
image(cel,0,0,600,600); //Neteja la pantalla. El cel té la mateixa mida que la finestra
gY = gY - 1; //El globus s’enlaira.
if (gY == 0) new_globus(); //Quan arribi a dalt, nou globus.
if (gX>pX && gX<pX+20) //Detecció de col·lisió i tret.
if(gY>pY && gY<pY+20)
if(keyCode == 'D') {
p = p + 1; //Incrementem els punts.
new_globus();
}
image(globus,gX-20,gY-20,200,200);
image(mira,pX,pY);
teclat(); //Llegeix el teclat.
text ("Globus rebentats:" +p, 250, 20); //Marcador.
int crono = int(millis()/1000); //Temps transcorregut.
if (crono >= 30) noLoop();
text ("Temps:" + (30-crono), width-80, 20);
}
void new_globus(){
gX = int(random(width-40));
//gX aleatòria.
gY = height;
//gY a la vora inferior.
}
void teclat(){
if (keyCode == RIGHT) pX = pX + 3;
if (keyCode == LEFT) pX = pX - 3;
if (keyCode == UP) pY = pY - 3;
if (keyCode == DOWN) pY = pY + 3;
if (pX < 0) pX = 0;
if (pX > width-20) pX = width-20;
if (pY < 0) pY = 0;
if (pY > height-20) pY = height-20;
}