Code
Code
void setup(){
size(1000,600);
}
void draw(){
if(dead == true){
background(0);
textAlign(CENTER);
fill(255);
textSize(50);
text("Press the space bar to begin!", width/2, height/2);
if(spaceBar){
dead = false;
}
}
if(dead == false){
background(#E575FC);
//Background Lines
int line=-15;
while(line<1000)
{
noStroke();
rect(line,-5,10,650);
line=line+60;
}
//star shape left
pushMatrix();
fill(#C027D8);
translate(width*0.1, height*0.5);
rotate(frameCount / 100.0);
star(0, 0, 30, 70, 5);
popMatrix();
//star shape right
pushMatrix();
translate(width*0.9, height*0.5);
rotate(frameCount / -100.0);
star(0, 0, 30, 70, 5);
popMatrix();
//pentagon left
pushMatrix();
translate(width*0.1, height*0.2);
rotate(frameCount / 100.0);
polygon(0, 0, 50, 5);
popMatrix();
//pentagon right
pushMatrix();
translate(width*0.9, height*0.2);
rotate(frameCount / -100.0);
polygon(0, 0, 50, 5);
popMatrix();
//octagon left
pushMatrix();
translate(width*0.1, height*0.8);
rotate(frameCount / 100.0);
polygon(0, 0, 50, 8);
popMatrix();
//octagon right
pushMatrix();
translate(width*0.9, height*0.8);
rotate(frameCount / -100.0);
polygon(0, 0, 50, 8);
popMatrix();
//coin
fill(#F7E40A);
ellipse(objectX,objectY,50,50);
//box outline
noStroke();
fill(#000000);
rect(playerX, 490, 200/2, 160/2);
//box color
noStroke();
fill(#6D55DE);
rect(playerX+5, 495, 180/2, 140/2);
//lid outline
noStroke();
fill(#000000);
rect(playerX-5, 470, 220/2, 50/2);
//lid color
noStroke();
fill(#6D55DE);
rect (playerX, 475, 200/2, 30/2);
rect(playerX+5,500,180/2,10/2);
//bow outline
noStroke();
fill(#000000);
rect(playerX+10, 455, 10/2,30/2);
rect(playerX+15, 450, 10/2,10/2);
rect(playerX+20, 445, 30/2,10/2);
rect(playerX+35, 450, 10/2,10/2);
rect(playerX+40, 455, 10/2,10/2);
rect(playerX+45, 460, 20/2,10/2);
rect(playerX+40, 465, 10/2,10/2);
rect(playerX+55, 465, 10/2,10/2);
rect(playerX+55, 455, 10/2,10/2);
rect(playerX+60, 450, 10/2,10/2);
rect(playerX+65, 445, 30/2,10/2);
rect(playerX+80, 450, 10/2,10/2);
rect(playerX+85, 455, 10/2,30/2);
rect(playerX+25, 475,30/2,10/2);
rect(playerX+60, 475,30/2,10/2);
//bow color
noStroke();
fill(#D14ACF);
rect(playerX+15,455,10/2,30/2);
rect(playerX+20,450,30/2,40/2);
rect(playerX+35,455,10/2,30/2);
rect(playerX+20,460,10/2,10/2);
rect(playerX+45,465,20/2,10/2);
rect(playerX+40,460,10/2,10/2);
rect(playerX+55,460,10/2,10/2);
rect(playerX+60,455,10/2,30/2);
rect(playerX+65,450,30/2,40/2);
rect(playerX+80,455,10/2,30/2);
rect(playerX+25,470,30/2,10/2);
rect(playerX+60,470,30/2,10/2);
//ribbon outline
noStroke();
fill(#000000);
rect(playerX+40,470,5,100);
rect(playerX+55,470,5,100);
rect(playerX+45,470,10,5);
//ribbon color
noStroke();
fill(#D14ACF);
rect(playerX+45,475,10,90);
PlayerPosition();
moveObject();
if(gameOver()){ //when game ends
resetObject();
dead = true;
}
if(objectIsTouchingPlayer()){
resetObject();
}
}
}
//movement
void PlayerPosition(){
if(leftArrow){
playerX -= 6; //move left
}
if(rightArrow){
playerX += 6; //move right
}
}
void resetObject(){
objectY = 30;
objectX = random(100,700);
}
boolean gameOver(){
if(objectY >= height){
return true;
}
return false;
}
//hitbox
boolean objectIsTouchingPlayer(){
if(objectX >= playerX && objectX <= playerX+80 && objectY >= 540 && objectY <= 590){
return true;
}
return false;
}