教表弟用Python寫了個“飛機大戰(zhàn)”游戲召调!表弟:可以拜你為師嗎竭讳?

今天由于小編我生病创葡,于是在家休息。剛好我表弟來我家里玩绢慢!由于太無聊了灿渴,就順便教他寫個"飛機大戰(zhàn)"的游戲!還不錯胰舆,他玩的也挺開心骚露,哈哈哈。如果有想要源碼的小伙伴們可以找我要缚窿!
image.png

操作環(huán)境

操作系統(tǒng):windows10
python版本:python 3.7
使用模塊:os,sys,random,pygame
Python有過基礎(chǔ)的都知道棘幸,我們在做游戲的時候,會用到一個模塊:pygame ! 小白需要注意的是:沒有的先 pip install 一下倦零!

具體實現(xiàn)

1:首先我們需要準備游戲中界面所需要的飛機和場景圖片误续!


image.png

2:我們初始化pygame,界面設(shè)計,繪制游戲屏幕光绕,一些前期準備做足女嘲!如:

...........
...........
...........
pygame.init() # 初始化pygame
# 使用pygame.display.set_mode()繪制游戲屏幕
screen = pygame.display.set_mode((512, 768))
# 使用pygame.time.Clock創(chuàng)建一個時鐘對象
clock = pygame.time.Clock() # 創(chuàng)建一個時鐘(后面刷新幀率時會用到)
pygame.time.set_timer(CREATE_ENEMY, 400) # 定時創(chuàng)建敵軍,計量毫秒
pygame.time.set_timer(CREATE_BULLET, 500) # 定時創(chuàng)建子彈
pygame.time.set_timer(CREATE_BOMB, random.randint(10000, 50000))
hero = Hero() # 創(chuàng)建一個英雄
hero_group = pygame.sprite.Group(hero) # 英雄精靈組
enemy_group = pygame.sprite.Group() # 敵軍精靈組
bullet_group = pygame.sprite.Group() # 子彈精靈組
bomb_group = pygame.sprite.Group() # 炸彈精靈組
font1 = pygame.font.Font("./images/SIMHEI.TTF", 40) # 設(shè)置字體樣式
font2 = pygame.font.Font("./images/SIMHEI.TTF", 25)
bomb_num = 0 # 炸彈數(shù)量
bj_num = 1 # 背景圖片的初始值,更換背景
FLAG = False # 游戲事件標識
score = False
while True:
 game_text = font1.render("飛機大戰(zhàn) ", 1, (220, 36, 194)) # 文本顯示,抗鋸齒,RGB
 start_text = font1.render("按下Enter 開始游戲! ", 1, (35, 221, 100))
 bj_text = font1.render("←→鍵更換游戲背景 ", 1, (39, 187, 217))
 for event in pygame.event.get(): # 獲取事件信息
 if event.type == pygame.KEYDOWN and event.key == pygame.K_RETURN:
 FLAG = True
 elif event.type == pygame.KEYDOWN and event.key == pygame.K_LEFT:
 bj_num += 1
 if bj_num > 5:
 bj_num = 1
 elif event.type == pygame.KEYDOWN and event.key == pygame.K_RIGHT:
 bj_num -= 1
 if bj_num < 1:
 bj_num = 5
 elif event.type == pygame.QUIT:
 exit()
 bj1 = BackGround(bj_num=bj_num) # 進入游戲的背景
 bj2 = BackGround(True, bj_num=bj_num) # 開始等于True的背景
 bj_group = pygame.sprite.Group(bj1, bj2)
 bj_group.draw(screen) # 繪制界面
............
............
............
image.png

3:功能上的實現(xiàn):英雄與敵軍碰撞時同是消除!當英雄與敵軍碰撞時替換爆炸效果圖片诞帐!繪制分數(shù)欣尼!繪制炸彈顯示子彈,與敵機碰撞時消除等等停蕉!

遇到問題沒人解答愕鼓?小編創(chuàng)建了一個Python學習交流QQ群:895817687 尋找有志同道合的小伙伴,
互幫互助,群里還有不錯的視頻學習教程和PDF電子書慧起!

# 子彈與敵機碰撞時消除
 score += len(pygame.sprite.groupcollide(bullet_group, enemy_group, True, True)) # score分數(shù) collide碰撞
 enemies = pygame.sprite.spritecollide(hero, enemy_group, True) # 英雄與敵軍碰撞時同是消除
 # bomb_num += len(pygame.sprite.spritecollide(hero, bomb_group, True))
 if len(enemies) > 0:
 hero.image = pygame.image.load("./images/image 12.png") # 當英雄與敵軍碰撞時替換爆炸效果圖片
 hero_group.draw(screen)
 pygame.display.update()
 hero.kill()
 exit()
 bj_group.update() # 更新所有精靈
 bullet_group.update()
 enemy_group.update()
 hero_group.update()
 bomb_group.update()
 bj_group.draw(screen) # 繪制精靈到界面
 enemy_group.draw(screen)
 bullet_group.draw(screen)
 hero_group.draw(screen)
 bomb_group.draw(screen)
 screen.blit(start_text, (10, 10)) # 繪制炸彈顯示
 screen.blit(score_text, (10, 40)) # 繪制分數(shù)
 pygame.display.update() # 刷新界面

image.png

或許做的不是很完美菇晃,后期都是可以不斷優(yōu)化的!喜歡的小哥哥小姐姐蚓挤,想要的可以私信磺送!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市灿意,隨后出現(xiàn)的幾起案子估灿,更是在濱河造成了極大的恐慌,老刑警劉巖缤剧,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件馅袁,死亡現(xiàn)場離奇詭異,居然都是意外死亡荒辕,警方通過查閱死者的電腦和手機汗销,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進店門犹褒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人弛针,你說我怎么就攤上這事叠骑。” “怎么了钦奋?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵座云,是天一觀的道長朦拖。 經(jīng)常有香客問我,道長睬隶,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任搀绣,我火速辦了婚禮链患,結(jié)果婚禮上麻捻,老公的妹妹穿的比我還像新娘巷折。我一直安慰自己油吭,他們只是感情好,可當我...
    茶點故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布类咧。 她就那樣靜靜地躺著区宇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上逼裆,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天,我揣著相機與錄音,去河邊找鬼然评。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的荆烈。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼憔购!你這毒婦竟也來了宫峦?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤玫鸟,失蹤者是張志新(化名)和其女友劉穎导绷,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體屎飘,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡妥曲,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了钦购。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片檐盟。...
    茶點故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖肮雨,靈堂內(nèi)的尸體忽然破棺而出遵堵,到底是詐尸還是另有隱情,我是刑警寧澤怨规,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布陌宿,位于F島的核電站,受9級特大地震影響波丰,放射性物質(zhì)發(fā)生泄漏壳坪。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一掰烟、第九天 我趴在偏房一處隱蔽的房頂上張望爽蝴。 院中可真熱鬧,春花似錦纫骑、人聲如沸蝎亚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽发框。三九已至,卻和暖如春煤墙,著一層夾襖步出監(jiān)牢的瞬間梅惯,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工仿野, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留铣减,地道東北人。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓脚作,卻偏偏與公主長得像葫哗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容