pygame开发PC端微信打飞机游戏
pygame開發PC端微信打飛機游戲
一、項目簡介
1. 介紹
本項目類似曾經火爆的微信打飛機游戲。游戲將使用Python語言開發,主要用到pygame的API。游戲最終將會以python源文件game.py形式完成,只需要運行python game.py就可以進入游戲。
游戲最終效果截圖如下:
2. 知識點
本實驗中將介紹在Linux桌面環境下使用Python及pygame快速開發小游戲的方式??梢酝ㄟ^這個游戲入門pygame游戲開發。
3. 參考文檔
代碼參考 Kill-Console寫的PythonShootGame
文檔參考pygame文檔
4. 安裝依賴包
(以下內容需要在實驗樓官方網站實現,不需要的也可以直接跳過)
需要安裝pygame庫來支持本實驗所需的代碼運行。
在實驗環境中打開Xfce終端,并輸入以下命令來安裝pygame,會提示輸入shiyanlou的密碼,密碼也是shiyanlou:
$ sudo apt-get update$ sudo apt-get install python-pygame
二、技術設計
1. 游戲角色
本游戲中所需的角色包括玩家飛機、敵機及***。用戶可以通過鍵盤移動玩家飛機在屏幕上的位置來打擊不同位置的敵機。因此設計以下Player,Enemy和Bullet三個類對應三種游戲角色。
對于Player,需要的操作有射擊和移動兩種,移動又分為上下左右4種情況。
對于Enemy,則比較簡單,只需要移動即可,從屏幕上方出現并移動到屏幕下方。
對于Bullet,與飛機相同,僅需要以一定速度移動即可。
2. 游戲功能
相信玩過微信打飛機的朋友都熟悉,這里將游戲做了簡化。飛機的速度固定,***的速度固定,基本操作是移動玩家飛機,目標飛機隨機從屏幕上方出現并勻速落到下方,***從玩家飛機發出,碰到目標飛機會擊毀,如果目標飛機碰到玩家飛機,則Game Over并顯示分數。
三、代碼實現
1. 界面顯示
代碼實現所需的resources圖片文件都可以通過下述命令獲取:
$git clone https://github.com/shiyanlou/PythonShootGame.git
詳細步驟
初始化pygame
設置游戲界面大小、背景圖片及標題
游戲主循環內需要處理游戲界面的初始化、更新及退出
顯示玩家飛機(代碼中使用的resources/image/shoot.png圖里包含多種飛機,只需要使用pygame.image的subsurface API根據位置截取shoot.png中所需的圖片)
示例代碼
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 
2. 事件處理
在主循環中處理鍵盤輸入的事件(上下左右按鍵操作),增加游戲操作交互(玩家飛機的上下左右移動)。
詳細步驟
獲取鍵盤事件(上下左右按鍵)
處理鍵盤事件(移動飛機的位置)
將上述步驟代碼放入游戲主循環中
示例代碼
| 1 2 3 4 5 6 7 8 9 10 11 12 | 
 
 
 
 
 
 
 
 
 
 
 | 
3. ***處理
***由玩家飛機發出,并以一定速度向界面上方移動。
詳細步驟
生成***,需要控制發射頻率
以固定速度移動***
移動出屏幕后刪除***
敵機被***擊中效果處理(下一節處理)
示例代碼
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 
4. 敵機處理
敵機需要隨機在界面上方產生,并以一定速度向下移動。
詳細步驟
生成敵機,需要控制生成頻率
移動敵機
敵機與玩家飛機碰撞效果處理
移動出屏幕后刪除敵機
敵機被***擊中效果處理
示例代碼
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 
5. 得分顯示
在游戲界面固定位置顯示消滅了多少目標敵機。
示例代碼
| 1 2 3 4 5 6 | 
 
 
 
 
 
 | 
四、完整代碼參考
大家可以按照上述步驟組合出自己的打飛機游戲,也可以登陸實驗樓官方網站參考完整代碼。
(http://www.shiyanlou.com/courses/49)
更多基礎課、項目課歡迎登陸實驗樓官方網站http://www.shiyanlou.com/courses/
總結
以上是生活随笔為你收集整理的pygame开发PC端微信打飞机游戏的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 很好的Android论坛
- 下一篇: python接口自动化(三十) 上传文
