眼珠會隨著箭頭移動
程式碼
void setup(){
size(800,800);
}
void draw(){
background(128);
strokeWeight(20);
ellipse(100,200,180,360);
ellipse(300,200,180,360);
float angle1 = atan2((mouseY-200)/2,mouseX-300);
float newX1 = 300+100*cos(angle1)/2;
float newY1 = 200+200*sin(angle1)/2;
ellipse(newX1,newY1,10,10);
float angle2 = atan2((mouseY-200)/2,mouseX-100);
float newX2 = 100+100*cos(angle2)/2;
float newY2 = 200+200*sin(angle2)/2;
ellipse(newX2,newY2,10,10);
}
二: 砲塔射擊遊戲
滑鼠發射砲彈,限制10個
程式碼
void setup(){
size(400,800);
}
float [] ballx=new float[10];
float [] bally=new float[10];
float [] ballvx=new float[10];
float [] ballvy=new float[10];
float [] angle=new float[10];
int now=0;
void draw(){
background(0,128,0);
fill(#F20C0C);ellipse(200,600,100,100);
for(int i=0;i<10;i++){
fill(#F2740C); ellipse(ballx[i],bally[i],30,30);
ballx[i]+=ballvx[i]; bally[i]+=ballvy[i];
}
angle[now]= atan2(mouseY-600,mouseX-200);
}
void mouseMoved(){
ballx[now]=200+50*cos(angle[now]);
bally[now]=600+50*sin(angle[now]);
}
void mousePressed(){
ballvx[now]=cos(angle[now]);
ballvy[now]=sin(angle[now]);
now++;
}
沒有留言:
張貼留言