最終的程式碼
void setup(){
size(500,500);
}
float x=250,y=250;///變數位置精確
float vx=2.0 , vy = -2.5;
float boardX,boardY=470,boardW=100,boardH=20;
void draw(){
boardX = mouseX-boardW/2;
background(#FFFFF2);
rect (boardX,boardY,boardW,boardH);//板子
ellipse(x,y,10,10);//橢圓
x = x+ vx;
y = y+ vy;
if(x >500) vx = -vx;
if(y < 0) vy = -vy;
if(x<0) vx = -vx;
if( (y>boardY && y<boardY+boardH) && ( x>boardX && x<boardX+boardW))
{
vy=-vy;
vx+=(mouseX-pmouseX)/2;//mouse移動速度
}
if(mousePressed && mouseButton==LEFT) boardW*=1.01;
if(mousePressed && mouseButton==RIGHT) boardW*=0.99;
}
最終圍棋
void setup(){
size(500,500);
}
int [][] go={
{0,0,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,1},
{0,1,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,1},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0},
};
int N=0;
void mousePressed(){
int j =(mouseX-25)/50;//對應x座標
int i =(mouseY-25)/50;
go[i][j] = (N%2==0)?1:2;///if(N%2==0用1,否則2
N++;
}
void draw(){
background(246,194,108);
for(int i=1;i<=9;i++){
line(50,50*i,450,50*i);
line(50*i,50,50*i,450);
}
for(int i=0;i<9;i++){
for(int j=0;j<9;j++){
if(go[i][j]==1) {
fill(0);
ellipse(50+j*50,50+i*50,40,40);
}else if(go[i][j]==2){
fill(255);
ellipse(50+j*50,50+i*50,40,40);
}
}
}
}
.png)
.png)
.png)
.png)
.png)
.png)
沒有留言:
張貼留言