? ? ? 今天發(fā)現(xiàn)了一個(gè)好玩的小項(xiàng)目,做的就是坦克大戰(zhàn)的,看到它的一瞬間讓我想起了小時(shí)候泡在4399網(wǎng)站里面的時(shí)光了,我果斷下載下來跑了起來,做的還是可以的,這里的可以就是說視覺效果上的可以,至于具體內(nèi)容細(xì)節(jié)什么還是有一些bug的,比如我自己摧毀“老窩”的時(shí)候居然沒有游戲結(jié)束,等等。
? ? ? 既然項(xiàng)目別人已經(jīng)做好了,我就不多做什么工作了,想著運(yùn)行py腳本多麻煩,能夠把游戲打包成為exe文件就好了,想到這里就開始著手進(jìn)行游戲的打包工作,這里主要使用的是pyinstaller模塊,這個(gè)模塊是python中打包工作中很經(jīng)典的一個(gè)模塊了。
? ? ? 首先到這里下載一個(gè)軟件的圖標(biāo),這是我個(gè)人的習(xí)慣,比較喜歡一個(gè)漂亮的logo,不喜歡默認(rèn)生成的統(tǒng)一的樣式,網(wǎng)站首頁也很萌,如下所示:
? ? ? 直接輸入坦克或者tank搜索即可,結(jié)果頁面如下:
? ? ? 我選中了紅色方框中的坦克樣式,覺得比較霸氣。
? ? ? ?接下來就要開始正式的打包了。
? ? ? ?其實(shí),pyinstaller打包操作是非常簡(jiǎn)單的,我經(jīng)常使用的命令如下:
pyinstaller -F -i tank.ico tank.py
? ? ? ?這樣同時(shí)指定了圖標(biāo)和腳本,還可以使用下面的命令:
pyinstaller -F -w -i tank.ico tank.py
? ? ? 兩條命令唯一的區(qū)別就是:在執(zhí)行生成的exe文件的時(shí)候會(huì)不會(huì)出現(xiàn)CMD窗口,前者會(huì)出現(xiàn),后者不會(huì)出現(xiàn)。
? ? ? ?在這里友情提示一下:如果說你要打包的腳本里面有很多的配置文件信息或者是本地?cái)?shù)據(jù)文件讀取相關(guān)的操作,一定不要使用絕對(duì)路徑,因?yàn)檫@樣的話你打包生成的exe文件就只能在你那個(gè)目錄下才會(huì)執(zhí)行,這顯然違背了我們打包為exe的初衷;另一方面打包操作成功結(jié)束后會(huì)在當(dāng)前程序腳本的目錄下出現(xiàn)兩個(gè)文件夾,如下:
? ? ? 我們需要的exe文件就存放在dist文件夾中,但是此時(shí)dist文件夾下面是沒有你所需要的本地?cái)?shù)據(jù)文件的,需要把對(duì)應(yīng)的數(shù)據(jù)文件復(fù)制進(jìn)去才可以執(zhí)行,我今天打包過程中頻繁報(bào)錯(cuò)就是在這里出了問題,不過好在是及時(shí)發(fā)現(xiàn)解決了。
? ? ? 最后生成的軟件如下:
? ? ? 接下來貼幾張tank.exe運(yùn)行的截圖,如下所示:
? ? ? 總體的視覺感覺還是不錯(cuò)的,最后一張圖片是我專門截下來的,可以看到,黃色坦克是我方坦克,我自己摧毀了“老巢”后,游戲卻沒有終止,還在繼續(xù),這應(yīng)該是作者最初設(shè)計(jì)時(shí)沒有考慮完全把,講到這里我今天的實(shí)踐就結(jié)束了,在這里還是要先感謝一下原作者,畢竟源碼是他開發(fā)了,我只是做了一個(gè)小小的打包操作。
? ? ? ?最后,上傳一下我打包得到的游戲包,感興趣的可以下載下來玩玩,歡迎交流!
? ? ? ?游戲包地址在這里,歡迎下載!
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
