iT邦幫忙

2024 iThome 鐵人賽

DAY 9
0
自我挑戰組

初階網頁學習與製作系列 第 9

Day-9 磚塊遊戲(4) 碰撞顏色變換🎨

  • 分享至 

  • xImage
  •  

當球碰到畫布邊緣時,我們透過呼叫 getRandomColor() 函數來隨機改變球的顏色。每次碰撞後,球會反彈並改變為新顏色。

getRandomColor() 函數會生成一個隨機的六位數十六進位顏色代碼,這個顏色以 # 開頭,後面跟隨著6個十六進位字元,常用於HTML和CSS表示顏色。

函數分解:

  1. const letters = '0123456789ABCDEF';

    • 定義了一個包含所有可用於十六進位顏色的字元字串。
  2. for (let i = 0; i < 6; i++)

    • 迴圈執行6次,因為顏色代碼由6個字元(每兩個字元代表紅色、綠色、藍色值)組成的。
  3. color += letters[Math.floor(Math.random() * 16)];

    • 每次從 letters 中隨機選取一個字元,並將其加到 color 字串中。
  4. return color;

    • 返回完整的隨機顏色,如 #3F5A9C

這樣每次碰撞,球的顏色都會隨機變換。

程式碼:
https://ithelp.ithome.com.tw/upload/images/20240923/20169460s3v1g8J35C.png
https://ithelp.ithome.com.tw/upload/images/20240923/20169460nzQ6kEKdmW.png
https://ithelp.ithome.com.tw/upload/images/20240923/20169460Y8w0e6U12j.png
https://ithelp.ithome.com.tw/upload/images/20240923/20169460rfoGmgU4lq.png

執行結果:
https://ithelp.ithome.com.tw/upload/images/20240923/20169460fwjsWkUiSN.png
https://ithelp.ithome.com.tw/upload/images/20240923/20169460OG4LP9biNk.png
https://ithelp.ithome.com.tw/upload/images/20240923/20169460XFiJ0Qfm3p.png


上一篇
Day-8 磚塊遊戲(3) 球的反彈🥏
下一篇
Day-10 磚塊遊戲(6) 擊球板子繪製🏏
系列文
初階網頁學習與製作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言