2022年9月19日 星期一

@W@ Week03

 

Week03

1.)

1-1.開上禮拜random檔
1-2.增加程式碼
void setup(){
 size(500,500); 
 PFont font=createFont("標楷體",40);
 textFont(font);
 myShuffle();
}
void myShuffle(){
  String[]flower = {"黑桃","紅心","方塊","梅花"};
  face1 = flower[int(random(4))]+int(random(13)+1);
  face2 = flower[int(random(4))]+int(random(13)+1);
  face3 = flower[int(random(4))]+int(random(13)+1);
  face4 = flower[int(random(4))]+int(random(13)+1); 
}
void mousePressed(){
 myShuffle(); 
}
String face1,face2,face3,face4;
void draw(){
  drawPokerCard(100,100,face1);
  drawPokerCard(130,150,face2);
  drawPokerCard(160,200,face3);
  drawPokerCard(190,250,face4);
}
void drawPokerCard(int x,int y,String face){
  int w=30;
  fill(255);
  rect(x-w/2,y-w/2,150+w,250+w,20);
  fill(#FAD7D7);
  rect(x,y,150,250,20); 
  //fill(0);
  if(face.indexOf("黑桃") == -1 && face.indexOf("梅花") == -1) fill(#FF0000);
  else fill(0);
  textSize(25);
  text(face,x+10,y+40);
}


1-3.開新檔
void setup(){
     size(700,700); 
}
void draw(){
     background(#FFFFF2);
     for(int i=0;i<52;i++){
      int x=(i%10)*60;
      int y=int(i/10)*120;
      rect(x,y,60,120);
     }
}

2.)

2-1.在牌上印出花色數字
void setup(){
 size(700,700); 
 PFont font=createFont("標楷體",10);
 textFont(font);
}
String[]faces = {
  "黑桃1","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",
  "紅心1","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",
  "方塊1","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",
  "梅花1","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K"
};
void draw(){
 background(#FFFFF2);
 for(int i=0;i<52;i++){
  int x=(i%10)*60;
  int y=int(i/10)*120;
  fill(255);
  rect(x,y,60,120);
  fill(0);
  text(faces[i],x+25,y+80);
 }
}


2-2.快速改字方法
Notepad++ /搜尋/取代


2-3.改程式
void setup(){
 size(800,600); 
 PFont font=createFont("標楷體",16);
 textFont(font);
}
String[]faces = {
  "黑桃A","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",
  "紅心A","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",
  "方塊A","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",
  "梅花A","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K"
};
void draw(){
 background(#FFFFF2);
 for(int i=0 ; i<52 ;i++){
  int x=(i%13)*60;
  int y=int(i/13)*120;
  fill(255); rect(x,y,60,120);
  if (faces[i].indexOf("紅心") == -1 && faces[i].indexOf("方塊") == -1)fill(0);
  else fill(255,0,0);
  text(faces[i],x+10,y+60);
 }
}


3.)

3-1.滑鼠按一下洗一次牌

void setup(){
 size(800,600); 
 PFont font=createFont("標楷體",16);
 textFont(font);
}
String[]faces = {
  "黑桃A","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",
  "紅心A","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",
  "方塊A","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",
  "梅花A","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K"
};
void draw(){
 background(#FFFFF2);
 for(int i=0 ; i<52 ;i++){
  int x=(i%13)*60;
  int y=int(i/13)*120;
  fill(255); rect(x,y,60,120);
  if (faces[i].indexOf("紅心") == -1 && faces[i].indexOf("方塊") == -1)fill(0);
  else fill(255,0,0);
  text(faces[i],x+10,y+60);
 }
}
void mousePressed(){
  int a = int (random(52));
  int b = int (random(52));
  String temp =faces[a];
  faces[a] = faces[b];
  faces[b] = temp;
}


3-2.剪貼程式到4張牌的程式(不會洗到重複的牌)
void setup(){
 size(500,500); 
 PFont font=createFont("標楷體",40);
 textFont(font);
 myShuffle();
}
String[]faces = {
  "黑桃A","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",
  "紅心A","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",
  "方塊A","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",
  "梅花A","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K"
};
void myShuffle(){
  for(int k=0;k<10000;k++){
    int a = int (random(52));
    int b = int (random(52));
    String temp =faces[a];
    faces[a] = faces[b];
    faces[b] = temp; 
  }
  face1 = faces[0];
  face2 = faces[1];
  face3 = faces[2];
  face4 = faces[3];
}
void mousePressed(){
 myShuffle(); 
}
String face1,face2,face3,face4;
void draw(){
  drawPokerCard(100,100,face1);
  drawPokerCard(130,150,face2);
  drawPokerCard(160,200,face3);
  drawPokerCard(190,250,face4);
}
void drawPokerCard(int x,int y,String face){
  int w=30;
  fill(255);
  rect(x-w/2,y-w/2,150+w,250+w,20);
  fill(#FAD7D7);
  rect(x,y,150,250,20); 
  //fill(0);
  if(face.indexOf("黑桃") == -1 && face.indexOf("梅花") == -1) fill(#FF0000);
  else fill(0);
  textSize(25);
  text(face,x+10,y+40);
}









沒有留言:

張貼留言