天天看點

scratch 極簡坦克大戰

文章目錄

    • 0示範
    • 1素材下載下傳
    • 2 背景設定
    • 3載入坦克
    • 4 遊戲架構設定
    • 5 坦克的轉動
    • 6 控制坦克的移動
    • 7發射子彈
      • 7.1 記錄坦克資訊
      • 7.2 載入子彈
    • 8 攻擊目标
    • 9 待續
    • 10 工程連結
假期裡面想教孩子一點程式設計,聽說scratch比較容易上手,就學着玩了一下。寓教于樂,就拿坦克大戰玩玩。實作一個基本的坦克控制,發射子彈,擊中目标的功能

0示範

scratch 極簡坦克大戰

1素材下載下傳

百度上找了一個免注冊的下載下傳位址

http://www.okbase.net/file/item/7584

scratch 極簡坦克大戰

B站有個scratch制作坦克大戰的教學視訊,挺詳細的,但是個人感覺過于複雜,沒仔細看

https://www.bilibili.com/video/av711915652

2 背景設定

設定黑色

scratch 極簡坦克大戰

3載入坦克

scratch 極簡坦克大戰

将p1tankR轉換為png,再通過上載精靈菜單上傳,背景色和大小需要調整一下,得到

scratch 極簡坦克大戰

4 遊戲架構設定

scratch 極簡坦克大戰

初始Init,tick為我方坦克更新消息,scroll為其餘對象的更新消息。整個遊戲在此架構下運作。

Init部分是用來初始化,這裡隻實作一個播放經典的坦克遊戲開始聲音

scratch 極簡坦克大戰

5 坦克的轉動

通過按鍵的上下左右控制坦克

scratch 極簡坦克大戰

6 控制坦克的移動

增加一個speed變量。

scratch 極簡坦克大戰

7發射子彈

7.1 記錄坦克資訊

子彈的位置是根據坦克的位置和朝向來判斷的,是以需要記錄這些資訊。

scratch 極簡坦克大戰

7.2 載入子彈

子彈的邏輯比較簡單,按下space鍵且沒有已在發射的子彈時,發射子彈,播放相應的聲音。在scroll消息更新的時候,更新子彈的位置。觸碰到邊緣時,子彈消失

scratch 極簡坦克大戰

8 攻擊目标

物體被子彈擊中時,發出中彈聲音,并且消失

scratch 極簡坦克大戰

9 待續

後期想做得更加複雜一些,制作地圖和引入敵人坦克

10 工程連結

連結: https://pan.baidu.com/s/1kVdBXvQhyuZIavfeyVVHRQ 提取碼: fhm4

繼續閱讀