這周的進度:右鍵將牌翻轉
int N=10;
Domino [] d;
String [] number1={" ","1","2","3","4","5","6"};
String [] number2={" ","1","2","3","4","5","6"};
void setup(){
size(1000,1000);
d= new Domino[N];
for(int i=0;i<N;i++){
d[i]=new Domino();
}
textSize(30);
textAlign(CENTER,CENTER);
}
void draw(){
background(#FFFFF2);
for(int i=0;i<N;i++){
if(d[i].a==0)d[i].draw();
else d[i].draw2();
}
}
void mousePressed(){
if(mouseButton==RIGHT){
for(int i=0;i<N;i++){
if(d[i].x<mouseX && mouseX<d[i].x+120 && d[i].y<mouseY && mouseY<d[i].y+60)
{
int t=d[i].n1;
d[i].n1=d[i].n2;
d[i].n2=t;
}
}
}
}
void keyPressed(){
if(key=='a' || key=='A'){
for(int i=0;i<N;i++){
if(d[i].x<mouseX && mouseX<d[i].x+120 && d[i].y<mouseY && mouseY<d[i].y+60){
if(d[i].a==0)d[i].a=1;
else d[i].a=0;
}
}
}
}
void mouseDragged(){
for(int i=0;i<N;i++)
{
if(d[i].x<mouseX && mouseX<d[i].x+120 && d[i].y<mouseY && mouseY<d[i].y+60){
d[i].x+=(mouseX-pmouseX);
d[i].y+=(mouseY-pmouseY);
}
}
}
class Domino{
int x,y;
int n1,n2;
int a,b;
Domino(){
x=(int)random(100,800);
y=(int)random(100,800);
n1=(int)random(7);
n2=(int)random(7);
a=0;
}
void draw(){
fill(50);
rect(x+60,y,60,60);
rect(x,y,60,60);
fill(255);
text(number1[n1],x+30,y+30);
text(number2[n2],x+60+30,y+30);
}
void draw2(){
fill(50);
rect(x,y,60,60);
rect(x,y+60,60,60);
fill(255);
text(number1[n1],x+30,y+30);
text(number2[n2],x+30,y+60+30);
}
}
藉由按右鍵可以交換左右的數字
試著把骨牌變站立的


沒有留言:
張貼留言