天天看點

Python代碼制作“恐龍跳一跳“小遊戲

開發工具

Python版本:3.6.4

相關子產品:

pygame子產品;

以及一些Python自帶的子產品。

相關檔案

衛星:web7599

環境搭建

安裝Python并添加到環境變量,pip安裝需要的相關子產品即可。

原理介紹

遊戲規則簡介:

玩家通過空格鍵控制一隻小恐龍的前進方式,當小恐龍觸碰到植物或者飛龍時,遊戲結束。小恐龍躲避的植物和飛龍越多,得分越高。

逐漸實作:

Step1:定義精靈類

為了友善實作小恐龍和植物以及飛龍之間的碰撞檢測,我們先定義一些精靈類,包括:

① 植物類

Python代碼制作“恐龍跳一跳“小遊戲

其中,move函數的作用為使随機生成的植物不斷地左移,來實作小恐龍不斷右移的效果。

② 飛龍類

Python代碼制作“恐龍跳一跳“小遊戲

飛龍類的定義要略微複雜一些,因為如果我們想讓飛龍飛起來更逼真一些,就必須每隔一段很小的時間,就對飛龍的狀态進行轉換。具體而言,飛龍的飛行狀态有兩種,即翅膀向上和翅膀向下:

Python代碼制作“恐龍跳一跳“小遊戲

我們需要做的就是每隔很短的一段時間,就讓飛龍的翅膀由其中一種姿勢轉為另外一種姿勢。

③ 小恐龍類

Python代碼制作“恐龍跳一跳“小遊戲

小恐龍類的定義與飛龍類類似,隻不過狀态要更加豐富一些,并且通過勻加速直線公式模拟恐龍的跳躍和下降的動作。

Step2:定義場景類

我們需要定義一個簡單的場景類(道路和雲等場景),來使我們的遊戲效果更加逼真:

Python代碼制作“恐龍跳一跳“小遊戲

這裡唯一需要注意的就是場景的左移速度應當與植物類一緻(畢竟它們理論上都應當是相對靜止的),并且需要三張場景圖同時左移來保證畫面的連續性。

Step3:遊戲主循環

先初始化,内容包括加載遊戲素材檔案、執行個體化之前定義的精靈類和場景類、定義一些必要的常量和使用者事件等:

Python代碼制作“恐龍跳一跳“小遊戲

然後就可以進入遊戲主循環了:

Python代碼制作“恐龍跳一跳“小遊戲

主循環主要包括四個功能,一是事件檢測;二是不斷地産生、移動并畫出相應的場景和精靈類;三是碰撞檢測;四是統計并顯示目前分數。

All Done!