1.游戲的入口
作者的功力還是蠻深的督怜,整個代碼的框架很清晰『萁牵看一下它的啟動函數(shù):
第一個from 引入了setup和tools, 主要是把一些初始化的工作在setup里面全部做完号杠,讀取一些配置文件和圖片,聲音到內(nèi)存里面丰歌。
第二個from 主要顯示主菜單和主界面姨蟋。
第三個from主要是引入了一些常量的配置,比如顏色紅色立帖,黑色眼溶,白色,超級瑪麗晓勇,蘑菇堂飞,磚塊圃泡,硬幣的一些狀態(tài)常量尝丐。
run_it 是整個游戲的核心類,是用來做整個游戲的控制中心狼忱。
作者設(shè)計了一個狀態(tài)機(jī)羡玛,里面設(shè)計了5個主要的場景:主菜單,主界面宗苍,超時的界面稼稿,游戲結(jié)束的節(jié)目還有循環(huán)運行的界面
最后運行run_it.main(),調(diào)用控制類里面的一個死循環(huán)函數(shù),不斷監(jiān)聽外部的event讳窟,來更新畫布让歼,整個的背景其實是循環(huán)的。
在這里還是要推薦下我自己建的Python開發(fā)學(xué)習(xí)群:725479218和龔總好「CoXie帶你學(xué)編程」(id:Pythoni521)丽啡,都是學(xué)Python開發(fā)的谋右,如果你正在學(xué)習(xí)Python ,小編歡迎你加入,大家都是軟件開發(fā)黨补箍,不定期分享干貨(只有Python軟件開發(fā)相關(guān)的)改执,包括我自己整理的一份2018最新的Python進(jìn)階資料和高級開發(fā)教程,歡迎進(jìn)階中和進(jìn)想深入Python的小伙伴
2.游戲的框架
整個游戲分resource和data兩個部分:
resource部分主要是存放一些字體啊坑雅,圖片啊辈挂,音樂和聲音。
data部分主要分組件compents和邏輯處理control部分裹粤,這里的邏輯處理部分终蒂,作者非常巧妙的用狀態(tài)機(jī)來設(shè)計。
整個游戲我玩了幾把還是很不錯的,畫片還是蠻漂亮的拇泣,操作也很流暢噪叙,尤其是超級瑪麗在空中騰飛的姿勢還是很帥的,刷刷刷的頂?shù)皆粕希?/p>
目前只能支持一個玩家玩霉翔,當(dāng)然唯一美中不足的是這款游戲僅在Py2.x上流暢運行睁蕾。大家可以去下載一下源碼,玩一玩然后讀一讀源碼早龟,源碼寫的非常通熟易懂惫霸,結(jié)構(gòu)很清晰,學(xué)習(xí)一下高手是如何寫代碼的葱弟,相信對大家的功力增長大有裨益壹店。