2017年9月30日 星期六

Week03 喵喵喵喵喵的上課筆記

●製作憤怒鳥

Step1:先把圖片繪製進去,其中一個可以跟著滑鼠

PImage imgCat, imgP;
void setup(){
  size(800,600);
  imgCat=loadImage("c.jpg");
  imgP=loadImage("p.png");

}
void draw(){
  background(255);
  image(imgCat, 400,300);
  image(imgP, mouseX, mouseY);
}




Step2:改成壓著才能移動的滑鼠

PImage imgCat, imgP;
void setup(){
  size(800,600);
  imgCat=loadImage("c.jpg");
  imgP=loadImage("p.png");

}
float PX=400, PY=300;
void draw(){
  background(255);
  image(imgCat, 400,300);
  image(imgP, PX, PY);
}
void mouseDragged(){
  PX=mouseX; PY=mouseY;
}



Step3:靜者恆靜,動者恆動

PImage imgCat, imgP;
void setup(){
  size(800,600);
  imgCat=loadImage("c.jpg");
  imgP=loadImage("p.png");
  imageMode(CENTER);

}
float PX=400, PY=300;
float PVX=0, PVY=0;
void draw(){
  background(255);
  image(imgP, PX, PY,100,100);
  line(PX,PY,400,300);
  PX+=PVX;
  PY=PVY;
}
void mouseDragged(){
  PX=mouseX; 
  PY=mouseY;
}
void mouseReleased(){
  PVX=(400-mouseX)/100.0;
  PVY=(300-mouseY)/100.0;
}





Step4:加速度

PImage imgCat, imgP;
void setup(){
  size(800,600);
  imgCat=loadImage("c.jpg");
  imgP=loadImage("p.png");
  imageMode(CENTER);

}
float PX=400, PY=300;
float PVX=0, PVY=0;
float PAX=0,PAY=0;
void draw(){
  //background(255);
  image(imgP, PX, PY,100,100);
  line(PX,PY,400,300);
  PX+=PVX;
  PY=PVY;
  PVX+=PAX;
  PVY+=PAY;
}
void mouseDragged(){
  PX=mouseX; 
  PY=mouseY;
  PVX=PVY=PAX=PAY=0;
}
void mouseReleased(){
  PVX=(400-mouseX)/10.0;
  PVY=(300-mouseY)/10.0;
  PAY=0.98;
}






Step5:擊中目標讓目標消失

PImage imgCat, imgP;
void setup(){
  size(800,600);
  imgCat=loadImage("c.jpg");
  imgP=loadImage("p.png");
  imageMode(CENTER);

}
float PX=400, PY=300;
float PVX=0, PVY=0;
float PAX=0,PAY=0;
float CatX=700,CatY=100;
boolean catAlive=true;
void draw(){
  background(255);
  if(catAlive) image(imgP, PX, PY,100,100);
  image(imgCat, CatX, CatY,100,100);
  if(dist(PX,PY,CatX,CatY)<100){
    catAlive=false;
  }
  line(PX,PY,400,300);
  PX+=PVX;
  PY=PVY;
  PVX+=PAX;
  PVY+=PAY;
}
void mouseDragged(){
  PX=mouseX; 
  PY=mouseY;
  PVX=PVY=PAX=PAY=0;
}
void mouseReleased(){
  PVX=(400-mouseX)/10.0;
  PVY=(300-mouseY)/10.0;
  PAY=0.98;
}




Step6:




●小朋友下樓梯


Step1:輸入程式碼

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++;
  
  kidX=mouseX;
}




沒有留言:

張貼留言