開發(fā)工具
Python版本:3.6.4
相關(guān)模塊:
pygame模塊有缆;
以及一些Python自帶的模塊折剃。
環(huán)境搭建
安裝Python并添加到環(huán)境變量华临,pip安裝需要的相關(guān)模塊即可是鬼。
原理簡介
游戲規(guī)則:
玩家通過鼠標(biāo)交換相鄰的拼圖僧须,若交換后水平/豎直方向存在連續(xù)三個相同的拼圖纲刀,則這些拼圖消失,玩家得分担平,同時(shí)生成新的拼圖以補(bǔ)充消失的部分示绊,否則,交換失敗暂论,玩家不得分面褐。
玩家需要在規(guī)定時(shí)間內(nèi)獲取盡可能高的得分。
逐步實(shí)現(xiàn):
Step1****:初始化
游戲初始化取胎,并加載必要的游戲素材:
Step2****:定義游戲精靈類
游戲中需要用到鼠標(biāo)與拼圖塊之間的碰撞檢測展哭,從而操作拼圖塊移動,因此我們定義一個拼圖塊游戲精靈類以方便實(shí)現(xiàn)這些功能:
Step3****:實(shí)現(xiàn)游戲主循環(huán)
邏輯其實(shí)很簡單闻蛀,就是不斷檢測是否有鼠標(biāo)點(diǎn)擊事件發(fā)生匪傍,如果有,則判斷鼠標(biāo)點(diǎn)擊時(shí)的位置是否在某拼圖塊的位置區(qū)域內(nèi)觉痛,若在役衡,則選中該拼圖塊,否則不選中薪棒。
當(dāng)有第二塊拼圖塊被選中時(shí)手蝎,則判斷兩個拼圖塊是否滿足拼圖交換的條件,若滿足俐芯,則交換拼圖塊翼抠,并獲得獎勵官卡,否則不交換并取消選這兩個拼圖塊的選中狀態(tài)兄春。
源代碼如下圖所示:
Step4****:游戲結(jié)束界面
游戲倒計(jì)時(shí)結(jié)束后畸裳,進(jìn)入游戲結(jié)束界面煞烫,界面顯示用戶當(dāng)前得分。同時(shí),若用戶鍵入R鍵則重新開始游戲尺棋,鍵入ESC鍵則退出游戲。
源代碼實(shí)現(xiàn)如下:
All Done****莽使!完整源代碼詳見相關(guān)文件锐极。