Python3制作簡單的滑雪游戲

2018-11-20 15:09 更新
本文轉(zhuǎn)載至知乎ID:Charles(白露未晞)知乎個人專欄
下載W3Cschool手機App,0基礎(chǔ)隨時隨地學(xué)編程>>戳此了解

導(dǎo)語

本期我們將制作一個簡單的滑雪游戲。

廢話不多說,讓我們愉快地開始吧~

相關(guān)文件

百度網(wǎng)盤下載鏈接: https://pan.baidu.com/s/1F74v1qGVk2NEWMEv-5E25w 

密碼: 2fcv

圖片素材源于網(wǎng)絡(luò),侵歉刪。

開發(fā)工具

Python版本:3.6.4

相關(guān)模塊:

pygame模塊;

以及一些Python自帶的模塊。

環(huán)境搭建

安裝Python并添加到環(huán)境變量,pip安裝需要的相關(guān)模塊即可。

先睹為快

原理介紹

游戲規(guī)則:

玩家通過“AD”鍵或者“←→”操控前進(jìn)中的滑雪者,努力避開路上的樹,盡量撿到路上的小旗。

如果碰到樹,則得分減50,如果撿到小旗子,則得分加10。

逐步實現(xiàn):

Step1:定義精靈類

由于游戲涉及到碰撞檢測(滑雪者與樹和小旗之間的碰撞),因此我們定義兩個精靈類,分別用于代表滑雪者和障礙物(即樹和小旗):

其中,滑雪者在前進(jìn)過程中應(yīng)當(dāng)擁有向左,向右偏移的能力,并且在偏移時滑雪者向前的速度應(yīng)當(dāng)減慢才更加合乎常理,這樣才能供玩家操作。同時,滑雪者應(yīng)當(dāng)擁有不同的姿態(tài)來表現(xiàn)自己滑行時的狀態(tài):

直線:

左偏一點:

左偏很多:

右偏一點:

右偏很多:

另外,盡管滑雪者的左右移動通過移動滑雪者本身實現(xiàn),但是滑雪者的向前移動是通過移動障礙物實現(xiàn)的。

Step2:隨機創(chuàng)建障礙物

現(xiàn)在我們需要定義一個隨機創(chuàng)建障礙物的函數(shù),以便在游戲主循環(huán)中調(diào)用:

Step3:游戲主循環(huán)

首先我們初始化一些參數(shù):

其中障礙物創(chuàng)建兩次的目的是便于畫面銜接。

然后我們就可以定義主循環(huán)了:

主循環(huán)的內(nèi)容包括:

事件監(jiān)聽、障礙物的更新、碰撞檢測以及分?jǐn)?shù)的展示等內(nèi)容,總之還是很容易實現(xiàn)的。

Step4:其他

開始、結(jié)束界面這些,就靠大家自己發(fā)揮了,我就寫了一個簡單的開始界面:

效果:

All Done!

更多

代碼截止2018-07-12測試無誤。

歡迎到GitHub上Star:

https://github.com/CharlesPikachu/Games

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號