欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

Python實(shí)現(xiàn)坦克大戰(zhàn) - 新聞資訊 - 云南小程序開(kāi)發(fā)|云南軟件開(kāi)發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開(kāi)發(fā)/軟件開(kāi)發(fā)

知識(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í)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 技術(shù)分享 >

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)案例查看更多