App下載

python制作小游戲(三)

短辮姑娘 2018-08-09 17:38:58 瀏覽數(shù) (5659)
反饋

本文轉(zhuǎn)載至知乎ID:Charles(白露未晞)知乎個(gè)人專欄

下載W3Cschool手機(jī)App,0基礎(chǔ)隨時(shí)隨地學(xué)編程>>戳此了解

導(dǎo)語(yǔ)

本期我們將制作一個(gè)拼圖小游戲。

好吧也許有些幼稚。

不過(guò)無(wú)論如何,讓我們愉快地開(kāi)始吧~~~


相關(guān)文件

百度網(wǎng)盤(pán)下載鏈接: https://pan.baidu.com/s/1q9VPkOYvI12LjqfQVRCF1Q

密碼: 7wfg


開(kāi)發(fā)工具

Python版本:3.6.4

相關(guān)模塊:

pygame模塊;

以及一些Python自帶的模塊

環(huán)境搭建

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


原理介紹

游戲簡(jiǎn)介:

將圖像分為m×n個(gè)矩形塊,并將圖像右下角的矩形塊替換為空白塊后,將這些矩形塊隨機(jī)擺放成原圖像的形狀。游戲目標(biāo)為通過(guò)移動(dòng)非空白塊將隨機(jī)擺放獲得的圖像恢復(fù)成原圖像的模樣,且規(guī)定移動(dòng)操作僅存在于非空白塊移動(dòng)到空白塊。

例如下圖所示:

逐步實(shí)現(xiàn):

Step1:游戲初始界面

既然是游戲,總得有個(gè)初始界面吧?

OK,我們先寫(xiě)一個(gè)游戲初始界面:

效果是這樣子的:

根據(jù)玩家自身水平,可以選擇不同難度的拼圖游戲。

Step2:定義移動(dòng)操作

定義移動(dòng)操作的目的是為了移動(dòng)拼圖(好像是廢話T_T),具體實(shí)現(xiàn)起來(lái)十分簡(jiǎn)單:

Step3:游戲主界面

OK,有了前面的鋪墊,我們可以開(kāi)始實(shí)現(xiàn)我們的游戲主界面了。

首先,我們需要打亂拼圖,但是隨機(jī)打亂很可能導(dǎo)致拼圖無(wú)解,因此我們通過(guò)隨機(jī)移動(dòng)拼圖來(lái)實(shí)現(xiàn)打亂拼圖的效果,這也是我們先定義拼圖的移動(dòng)操作的主要原因:

游戲主界面初始化:

最后實(shí)現(xiàn)主界面的顯示刷新以及事件響應(yīng)等功能:

Step4:游戲結(jié)束界面

當(dāng)玩家完成拼圖后,需要顯示游戲結(jié)束界面,和游戲初始界面類(lèi)似,實(shí)現(xiàn)起來(lái)都比較簡(jiǎn)單:

OK,大功告成?。?!


游戲效果

在cmd窗口運(yùn)行Game3.py文件即可。

效果如下:


更多

代碼截止2018-06-26測(cè)試無(wú)誤。

同樣,有興趣的小伙伴可以在此基礎(chǔ)上進(jìn)行優(yōu)化,比如增加計(jì)時(shí)功能,積分功能等等。


2 人點(diǎn)贊