知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
Python實(shí)現(xiàn)坦克大戰(zhàn)
發(fā)表時(shí)間:2020-10-19
發(fā)布人:葵宇科技
瀏覽次數(shù):54
Python實(shí)現(xiàn)坦克大年夜戰(zhàn)
一、媒介
前段時(shí)光,也就是國(guó)慶節(jié)。在臥室閑來(lái)無(wú)事,用pygame寫(xiě)了一個(gè)小游戲,就是標(biāo)題寫(xiě)的《坦克大年夜戰(zhàn)》。這個(gè)游戲?qū)懥藘蓚€(gè)版本,第一個(gè)版本是按照書(shū)上的思惟來(lái)寫(xiě)的,發(fā)明寫(xiě)到后面的時(shí)刻代碼太亂了。于是我又大年夜頭開(kāi)端,用比較合理的面向?qū)ο笏嘉男聦?xiě)了一個(gè)版本。說(shuō)比較合理也執(zhí)僨相符我本身的思惟,所以不免會(huì)有一些不合理的設(shè)計(jì),程度有限,欲望各位讀者可以或許諒解一下。
二、開(kāi)辟情況
我們先來(lái)看看我的開(kāi)辟情況,用的器械照樣比較簡(jiǎn)單的:
作者:Zack
時(shí)光:2020年10月16日
集成開(kāi)辟對(duì)象:pycharm 2020
開(kāi)辟情況:python 3.7.9
第三方模塊:pygame
個(gè)中我還用了一些第三方模塊,然則在游戲主體中沒(méi)有應(yīng)用,所以就先不介紹了。下面我們來(lái)看看竽暌刮戲?qū)崿F(xiàn)了些什么功能。
三、項(xiàng)目介紹
3.1 項(xiàng)目截圖
我們主法度榜樣人口在main.py文件,在安裝好pygame模塊后就能直接運(yùn)行。下面是運(yùn)行截圖:
下面是槍彈擊中墻壁的爆炸效不雅:
下面是多個(gè)敵方坦克的效不雅圖:
我們?cè)賮?lái)看看項(xiàng)目標(biāo)各個(gè)文件。
3.2 項(xiàng)目文件
下面是項(xiàng)目目次:
(1)resources
個(gè)中resources是資本文件,音頻、圖片等都在resources目次。而tools中供給了兩個(gè)小對(duì)象,因?yàn)橹皇枪┬∥遗R時(shí)應(yīng)用的,這里不過(guò)多說(shuō)清楚明了。
(2)main.py
而main.py則是項(xiàng)目標(biāo)主人口,代碼很短:
from tank_war import TankWar
if __name__ == '__main__':
tankWar = TankWar()
tankWar.run_game()
我們直接創(chuàng)建了TankWar的實(shí)例,然后調(diào)用run_game辦法運(yùn)行游戲。
(3)tank_war.py
tank_war.py中寫(xiě)了我們坦克大年夜戰(zhàn)游戲主體的模塊,瑯綾擎的TankWar類(lèi)定義了游戲主體的一切行動(dòng)。包含初始化屏幕、初始化pygame模塊、創(chuàng)建敵方坦克、繪制地圖、檢測(cè)碰撞、監(jiān)聽(tīng)事宜等。
(4)sprites.py
在pygame中供給了一個(gè)sprite類(lèi)用于創(chuàng)建有圖像的物體。而sprites中定義的都是sprite的子類(lèi),是以也都是有圖片的類(lèi)。個(gè)中包含坦克基類(lèi)、豪杰類(lèi)(我方坦克)、仇敵類(lèi)(敵方坦克)、槍彈類(lèi)、墻類(lèi)等。
而各個(gè)類(lèi)中定義了各自的行動(dòng),例如:坦渴攀類(lèi)有發(fā)射槍彈的行動(dòng)、移動(dòng)的行動(dòng)、爆炸的行動(dòng)等。
(5)settings.py
settings.py中定義了一些設(shè)置信息,包含槍彈的數(shù)量、槍彈的速度、坦克的速度、地圖信息、圖片信息等。我們可以經(jīng)由過(guò)程修改settings.py來(lái)調(diào)劑游戲的一些設(shè)置,因?yàn)檫€沒(méi)有寫(xiě)設(shè)置相干的操作,所以須要修改源碼。
因?yàn)榇a比較多,這里就不介紹代碼了。游戲還要很多不足之處,后續(xù)會(huì)持續(xù)更新。項(xiàng)目已上傳GitHub,迎接各位來(lái)fork。今天就介紹到這里了~
項(xiàng)目地址:https://github.com/IronSpiderMan/TankWar
pygame文檔地址:https://www.pygame.org/docs/
本文來(lái)源"大眾,"號(hào):新建文件夾X,轉(zhuǎn)載請(qǐng)標(biāo)明出處。
相關(guān)案例查看更多
相關(guān)閱讀
- 小程序設(shè)計(jì)
- 汽車(chē)回收管理系統(tǒng)
- 云南網(wǎng)絡(luò)營(yíng)銷(xiāo)
- 網(wǎng)站優(yōu)化
- 公眾號(hào)模板消息
- asp網(wǎng)站
- 網(wǎng)站制作哪家好
- 昆明小程序開(kāi)發(fā)聯(lián)系方式
- 網(wǎng)站維護(hù)
- 云南做百度小程序的公司
- 云南網(wǎng)站建設(shè)哪家公司好
- 小程序的開(kāi)發(fā)公司
- 云南網(wǎng)站開(kāi)發(fā)哪家好
- 網(wǎng)站建設(shè)列表網(wǎng)
- web
- 云南網(wǎng)站建設(shè)制作
- 云南網(wǎng)站建設(shè)公司地址
- 日歷組件
- 云南小程序設(shè)計(jì)
- 支付寶小程序被騙
- 網(wǎng)絡(luò)營(yíng)銷(xiāo)
- vue開(kāi)發(fā)小程序
- 云南小程序商城
- 云南小程序哪家好
- 百度小程序公司
- 百度人工排名
- 開(kāi)發(fā)微信小程序
- 報(bào)廢車(chē)拆解系統(tǒng)
- 麗江小程序開(kāi)發(fā)
- 云南軟件公司