
載入憤怒鳥跟豬的圖片記得要把圖拉進去
圖片需要改成從角落當中心變成圖片中心當中心
imageMode(CENTER);
讓他能像拉彈弓一樣出去需要BIRD的位置加上速度
birdX birdY birdVX birdVY

除了位置速度 還要加上個加速度AX
現在讓bird碰到pig能消失

PImage imgBird,imgPig;
void setup(){
size(800,600);
imgBird=loadImage("bird.png");
imgPig=loadImage("pig.png");
imageMode(CENTER);
}
float birdX=400,birdY=300,pigX=600,pigY=100;
float birdVX=0, birdVY=0;
float birdAX=0,birdAY=0;
boolean pigAlive=true;
void draw(){
background(255);
//ellipse(birdX, birdY, 100,100);
if(pigAlive)
image(imgPig, pigX,pigY,100,100);
image(imgBird, birdX, birdY,100,100);
if(dist(pigX,pigY,birdX, birdY)<100){
pigAlive=false;
}
line(birdX, birdY,400,300);
birdX +=birdVX;
birdY +=birdVY;
birdVX +=birdAX;
birdVY +=birdAY;
}
void mouseDragged(){
birdX=mouseX;
birdY=mouseY;
birdVX=birdVY=birdAX=birdAY=0;
}
void mouseReleased(){
birdVX = (400-mouseX)/10.0;
birdVY = (300-mouseY)/10.0;
birdAY=0.98;
}

PImage imgBird,imgPig;
void setup(){
size(800,600);
imgBird=loadImage("bird.png");
imgPig=loadImage("pig.png");
imageMode(CENTER);
}
float birdX=400,birdY=300,pigX=600,pigY=200;
float birdVX=0, birdVY=0;
float birdAX=0,birdAY=0;
boolean pigAlive=true;
void draw(){
background(255);
//ellipse(birdX, birdY, 100,100);
if(pigAlive) image(imgPig, pigX,pigY,100,100);
image(imgBird, birdX, birdY,100,100);
if(dist(pigX,pigY,birdX, birdY)<100){
pigAlive=false;
}
line(birdX, birdY,400,300);
birdX +=birdVX;
birdY +=birdVY;
if(birdX<50){birdX=50; birdVX = -birdVX;}
if(birdX>width-50){birdX=width-50; birdVX= -birdVX;}////寬度
if(birdY<50){birdY=50;birdVY= -birdVY;}
if(birdY>height-50){birdY=height-50;birdVY = -birdVY;}///高度
///多於50是因為讓他露出整個圖片出來
birdVX +=birdAX;
birdVY +=birdAY;
birdVX *= 0.997;///這個就是摩擦力
birdVY *= 0.997;
}
void mouseDragged(){
birdX=mouseX;
birdY=mouseY;
birdVX=birdVY=birdAX=birdAY=0;
}
void mouseReleased(){
birdVX = (400-mouseX)/10.0;
birdVY = (300-mouseY)/10.0;
birdAY=0.98;
}
憤怒鳥的程式碼跟小朋友下樓梯的程式碼很像

沒有留言:
張貼留言