2016年9月19日 星期一

Week03 王暄淇

1.
視窗 視窗有球跟著滑鼠
PImage img;
void setup()
{
  size(600,800);

  img=loadImage("ball.png");
  imageMode(CENTER);
}
void draw()
{
  background(#FFFFFF);
  image(img,mouseX,mouseY,100,100);
}



2.
滑鼠超過高度一半 球出去抓皮卡丘(未完整)
PImage imgBall;
PImage imgPika;
float ballX=300,ballY=400,pikaX=300,pikaY=200;
float ballVX=0,ballVY=0;
void setup()
{
  size(600,800);

  imgBall=loadImage("ball.png");
  imgPika=loadImage("pika.png");
  imageMode(CENTER);
}
void draw()
{
  background(#FFFFFF);
  image(imgPika,pikaX,pikaY,100,100);
  image(imgBall,ballX,ballY,100,100);
  ballX+=ballVX/1.5; ballY+=ballVY/1.5;
}
void mouseMoved()
{
  if(mouseY<height*2/3 && ballVY==0)
  {
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
  }
  else if(mouseY>height*2/3)
  {
    ballX=mouseX;  ballY=mouseY;
    ballVX=0;ballVY=0;
  }
}

3.
製造出重力 拋物線 變數bFly
利用變數ballZscale製造3D感

float ballX=300,ballY=400, ballZscale=1.0,pikaX=300,pikaY=200;
float ballVX=0,ballVY=0;
boolean bFly=false;
void setup()
{
  size(900,800);
  
  imgBall=loadImage("ball.png");
  imgPika=loadImage("pika.png");
  imageMode(CENTER);
}
void draw()
{
  background(#FFFFFF);
  image(imgPika,pikaX,pikaY,100,100);
  image(imgBall,ballX,ballY,100/ballZscale,100/ballZscale);

  if(bFly)
  {
    ballX+=ballVX/1.5; ballY+=ballVY/1.5;
    ballVY+=0.98;
    ballZscale+=0.03; //利用縮放感覺像是往前丟 縮的大小影響觀感 要注意
  }
  
}
void mouseMoved()
{
  if(mouseY<height/2 && ballVY==0)
  {
    ballVX=mouseX-pmouseX;
    ballVY=mouseY-pmouseY;
    bFly=true;
  }  
  else if(mouseY>height/2)
  {
    ballX=mouseX;  ballY=mouseY;
    ballVX=0;ballVY=0; bFly=false;
    ballZscale=1.0;
  }
}
2D感


3D感

想做的期中期末
5種小遊戲 利用同樣三種按鈕代表三種顏色來進行挑戰通關

1.槍擊術 隨機出現分顏色和數量 要正確的顏色和數量打擊才算有分數
2.接竹輪 中空的竹輪掉落 看準時機按按鈕 準確的接住竹輪才有分數
3.蹺蹺板飛車  一個按鈕操控蹺蹺板的上下模式 目標 用最短的時間前進到終點
4.美女照照  三位美女 選出不同的美女 得分
5.空中跳跳  有三種顏色的版子隨機出現在空中 要按出正確的按鈕才可前進 目標 最短時間內到終點
預想圖


沒有留言:

張貼留言