女孩的圖片
第二天我們加上女孩在上面彈跳
PImage img1;
float x=203,y=370,vx=0,vy=0;//女孩
boolean jumping=false;
float []tofuX=new float[100];
float []tofuVX=new float[100];
int n=1;//豆腐數量
int state=0;//0是不會動,1是豆腐移動,2是豆腐停止且往下降
int tofuH=0;
int t=0;
void setup(){
size(400,600);
img1=loadImage("bgg.JPG");
tofuX[0]=140;//豆腐剛開始的位子
generateTofu();
}
void draw(){
image(img1,0,0,400,600);
for(int i=0;i<n;i++)
{
rect(tofuX[i],400-i*65+tofuH,125,65);
}
if(state==1){
if(t>0){
tofuH++;t--;
}else{
state=0;
}
}
tofuX[n-1]+=tofuVX[n-1];
if(!jumping && tofuVX[n-1]!=0 && tofuX[n-1]<x+30 && x-30<tofuX[n-1]+125){
background(255,0,0);
}
ellipse(x,y+tofuH,60,60);
if(jumping){
if(vy>0 && tofuX[n-1]<x && x<tofuX[n-1]+125 && y+33<400-(n-1)*65 && y+33+vy>400-(n-1)*65){
jumping=false; vy=0; y=400-(n-1)*65-30;
screenroll();
generateTofu();
}else{
y+=vy;
vy+=0.98;
}
}
}
void mousePressed(){
if(!jumping){
jumping=true;
vy=-24;
}
}
void keyPressed(){
generateTofu();
}
void generateTofu(){
int dir=int(random(2));//0=左邊,1=右邊
n++;
if(dir==0){
tofuX[n-1]=400;
tofuVX[n-1]=-2;
}else{
tofuX[n-1]=-125;
tofuVX[n-1]=2;
}
}
void screenroll(){
state= (state+1)%3;
if(state==0){
}else if(state==1){
t=65;
}
}
沒有留言:
張貼留言