2022年9月26日 星期一

尖🦉筆記-week04

 ◇彈力球(上面的動態島可以在自己加)

  1. 設好畫面大小,及x,y變數。 //x,y 設為float可以更精細

  2. ellipse( x , y , 寬 , 長);    //畫出橢圓,

     並讓x,y移植慢慢增加。

  3.多設兩個變數 vx ,vy (要用float)、 x,y也要改成float

  4.並設定if-else ,當x超過畫面就換方向 且 y超過上面就會反彈。

  5.在void draw 設定 background 使他每次執行都會蓋過上一個球。

  6. 用rect 設定板子 , 並設定int boardx= mouseX; ,rect( mouseX , 470 , 寬 , 長 , 弧度); //使方塊能跟滑鼠一起動。

  7.設定球碰到板子反彈,到板子的y位置和 x~x+100的位置就會反彈

  8.將boardx改為 mouseX- boardW/2 這樣就會在板子中間控制。
  9.利用(mouseX - pmouseX)/2 算出滑鼠的移動量,並加到vx
  10.設定當按下右鍵/左鍵 板子會放大縮小(運用mousePressed  和 mouseButton)。

◇圍棋:

  1. 設定好視窗大小,並建立9*9陣列 (裡面暫時都放0)。

  2.在draw裡面利用雙迴圈,去偵測陣列裡面的值。

  3. 用if -else判斷,如果值為1就填充黑色,為0為白色

  4.利用雙層迴圈畫線條, 利用line( x1 , y1, x2, y2);
    分別 x 或 y 乘 i ,就會有好幾條線

  5.將偵測棋子的if-else指令修改,當為1時,下黑棋,為2時,下白旗。

    當兩個都不是就不下棋。

  6.設一個mousePressed() 。 

  7.設定 int j = (mouseX-25)/50;    為了辨識我們在哪個位置

              int i = (mouseY-25)/50;

  8.切換黑白棋,先設定int N=0 利用go[i][j]=(N%2==0) ? 1: 2; // 如果(N%2==0) 用1,否則2,並放進陣列那個位置。去判別現在要黑還白,之後N++


沒有留言:

張貼留言