




程式碼
PImage imgBall, imgPika;
float ballX=300,ballY=400, pikaX=300, pikaY=200;
float ballVX=0, ballVY=0;
void setup()
{
size(600,800);
imgBall=loadImage("Pokeball.png");
imgPika=loadImage("Pika.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 && ballVY==0)
{
ballVX=mouseX-pmouseX;
ballVY=mouseY-pmouseY;
}
else if(mouseY>height*2/3)
{
ballX=mouseX;
ballY=mouseY;
ballVX=0;
ballVY=0;
}
}
增加拋物線

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("Pokeball.png");
imgPika=loadImage("Pika.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 && ballVY==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;
float ballZscale;
boolean bFly=false;
void setup()
{
size(600,800);
imgBall=loadImage("Pokeball.png");
imgPika=loadImage("Pika.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 && ballVY==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;
ballZscale=1.0;
}
}
沒有留言:
張貼留言