2016年9月19日 星期一

WEEK03

左上是(0,0)往下是正的
~~~~做手機遊戲~~~~
1.下載processing3.2.1
2.右上角選add more--->選android
3.選成安卓模式後  下載SDK
4.USB接手機,選device
Vysor--->讓手機螢幕顯示在電腦上

~~神奇寶貝球~~
1.球跟著滑鼠走
程式碼-->用java開
PImage img;
void setup(){
  size(600,800);
 img=loadImage("Poke_Ball.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  ///if(mousePressed)line(mouseX,mouseY,pmouseX,pmouseY);
 image(img,mouseX,mouseY,100,100);
}
先下載Poke_Ball的球丟到檔案裡面
要先存檔程式碼

2.滑鼠滑到一半球會自己跑出去
程式碼
PImage imgBall, imgFire;
float ballX=300, ballY=400,fireX=300,fireY=200;
float ballVX=0,ballVY=0;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgFire=loadImage("fire.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgFire,fireX,fireY,100,100);
  image(imgBall,ballX,ballY,100,100);
  ballX+=ballVX/2.0;ballY+=ballVY/2.0;
}
void mouseMoved(){
  if(mouseY<height*2/3 && ballVY==0)///滑鼠Y的位置超過視窗2/3後會有VX&VY的速度
{
    ballVX=mouseX-pmouseX;///後來位移減原來位移=速度
    ballVY=mouseY-pmouseY;
  }
  else if(mouseY>height*2/3)
{
    ballX=mouseX;
    ballY=mouseY;
    ballVX=0;
    ballVY=0;
  }
}



3.丟出拋物線的球
程式碼
PImage imgBall, imgFire;
float ballX=300, ballY=400,fireX=300,fireY=200;
float ballVX=0,ballVY=0;
boolean bFly=false;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgFire=loadImage("fire.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgFire,fireX,fireY,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 && 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;
  }
}



4.球會變小
程式碼
PImage imgBall, imgFire;
float ballX=300, ballY=400,fireX=300,fireY=200,ballZscale=1.0;
float ballVX=0,ballVY=0;
boolean bFly=false;
void setup(){
  size(600,800);
  imgBall=loadImage("Poke_Ball.png");
  imgFire=loadImage("fire.png");
  imageMode(CENTER);
}
void draw(){
  background(255);
  image(imgFire,fireX,fireY,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;
  }
}




期中作業
繞障礙物不可以撞到

沒有留言:

張貼留言