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;
}
}
沒有留言:
張貼留言