2022年9月19日 星期一

week02 09160286

把上週的程式先拿出來用>點一下就可以洗牌

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=25;

  fill(255);

  rect(x-w/2,y-w/2, 150+w,250+w, 20);

  fill(#6FCBF5);

  rect(x,y, 150,250,20);

  fill(0);

  if ( face.indexOf("黑桃") == -1 && face.indexOf("梅花") == -1 ) fill(#FF0000);

  else fill(0);

  textSize(40);

  text( face, x, y+40 );

}


先製作出所有卡牌 void setup() { size(700,700); } void draw(){ background(#FFFFF2); for(int i=0; i<52; i++){ //迴圈 int x = (i%10)*60; //除法10餘數 int y = int(i/10)*120; //十位數 rect( x, y, 60, 120 ); } }


再把牌面都做出來

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);

 }

}



沒有留言:

張貼留言