2016年9月19日 星期一

week03 03160595

1.下載processing3.2.1
https://processing.org/download/?processing
設定成Android

2.簡易pokemon
3.設定pikachu圖與將球能飛行
程式碼:
PImage imgBall,imgPika;
float ballX=300,ballY=400,pikaX=300,pikaY=200;
float ballVX=0,ballVY=0;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgPika=loadImage("Pikachu.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgPika,pikaX,pikaY,100,100);
  image(imgBall,ballX,ballY,100,100);
  ballX+=ballVX/2.0; ballY+=ballVY/2.0;
}
void mouseMoved(){
  if(mouseY<height*2/3&& ballVX==0){
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
  }
  else if(mouseY>height*2/3){
    ballX=mouseX; ballY=mouseY;
    ballVX=0; ballVY=0;
  }
}
4.加重力變拋物線
程式碼:
PImage imgBall,imgPika;
float ballX=300,ballY=400,pikaX=300,pikaY=200;
float ballVX=0,ballVY=0;
boolean bFly=false;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgPika=loadImage("Pikachu.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgPika,pikaX,pikaY,100,100);
  image(imgBall,ballX,ballY,100,100);
  if(bFly){
    ballX+=ballVX/2.0; ballY+=ballVY/2.0;
    ballVY+=0.98;
}
}
void mouseMoved(){
  if(mouseY<height*2/3&& ballVX==0){
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
    bFly=true;
  }
  else if(mouseY>height*2/3){
    ballX=mouseX; ballY=mouseY;
    ballVX=0; ballVY=0;
    bFly=false;
  }
}
讓球拋出去縮小
程式碼:
PImage imgBall,imgPika;
float ballX=300,ballY=400,pikaX=300,pikaY=200;
float ballVX=0,ballVY=0;
boolean bFly=false; 
float ballZscale=1.0;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgPika=loadImage("Pikachu.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgPika,pikaX,pikaY,100,100);
  image(imgBall,ballX,ballY,100/ballZscale,100/ballZscale);
  if(bFly){
    ballX+=ballVX/2.0; ballY+=ballVY/2.0;
    ballVY+=0.98;
    ballZscale+=0.03;
}
}
void mouseMoved(){
  if(mouseY<height*2/3&& bFly==false){
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
    bFly=true;
  }
  else if(mouseY>height*2/3){
    ballX=mouseX; ballY=mouseY;
    ballVX=0; ballVY=0;
    bFly=false;
    ballZscale=1.0;
  }
}




沒有留言:

張貼留言