2017年9月30日 星期六

Week03_一個上課的筆記

作業一 :

程式教學
放入圖片,憤怒鳥跟著滑鼠。


加上彈簧線。



將憤怒鳥圖片對準件投中間。


PImage imgBird,imgPig;
void setup(){
  size(800,600);
  imgBird=loadImage("angryBird.png");
  imgPig=loadImage("pig.png");
  imageMode(CENTER); //滑鼠可設在圖片中間
}
float birdX=400,birdY=300;
float birdVX=0,birdVY=0;
float birdAX=0,birdAY=0;
void draw(){
  background(255);
  line(birdX,birdY,400,300);
  image(imgPig,400,300,100,100);
  image(imgBird,birdX,birdY,100,100);
  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("angryBird.png");
  imgPig=loadImage("pig.png");
  imageMode(CENTER);
}
float birdX=400,birdY=300;
float birdVX=0,birdVY=0;
float birdAX=0,birdAY=0;
float pigX=700,pigY=100;
boolean pigAlive=true;
void draw(){
  background(255);
  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(birdX<50) {birdY=50; birdVY=-birdVY;}
  if(birdY>height-50) {birdY=height-50; birdVY=-birdVY;}
    //憤怒鳥碰到邊框會反彈
  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;
}




作業二 : 小朋友下樓梯

小朋友遇到方塊牆不會往下墜。
void setup(){
  size(600,500);
}
int boardX=227,boardY=400;
int kidX=300,kidY=250;
void draw(){
  background(0);
  rect(boardX,boardY,200,50);
  rect(kidX,kidY,50,50);
  if(kidX>boardX-50 && kidX<boardX+200 && kidY>boardY-50){
  }
  else kidY++;
 
}



沒有留言:

張貼留言