教表弟用Python写了个“飞机大战”游戏!表弟:可以拜你为师吗?

今天由于小编我生病,于是在家休息。刚好我表弟来我家里玩!由于太无聊了,就顺便教他写个"飞机大战"的游戏!还不错,他玩的也挺开心,哈哈哈。如果有想要源码的小伙伴们可以找我要!
image.png

操作环境

操作系统:windows10
python版本:python 3.7
使用模块:os,sys,random,pygame
Python有过基础的都知道,我们在做游戏的时候,会用到一个模块:pygame ! 小白需要注意的是:没有的先 pip install 一下!

具体实现

1:首先我们需要准备游戏中界面所需要的飞机和场景图片!


image.png

2:我们初始化pygame,界面设计,绘制游戏屏幕,一些前期准备做足!如:

...........
...........
...........
pygame.init() # 初始化pygame
# 使用pygame.display.set_mode()绘制游戏屏幕
screen = pygame.display.set_mode((512, 768))
# 使用pygame.time.Clock创建一个时钟对象
clock = pygame.time.Clock() # 创建一个时钟(后面刷新帧率时会用到)
pygame.time.set_timer(CREATE_ENEMY, 400) # 定时创建敌军,计量毫秒
pygame.time.set_timer(CREATE_BULLET, 500) # 定时创建子弹
pygame.time.set_timer(CREATE_BOMB, random.randint(10000, 50000))
hero = Hero() # 创建一个英雄
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) # 设置字体样式
font2 = pygame.font.Font("./images/SIMHEI.TTF", 25)
bomb_num = 0 # 炸弹数量
bj_num = 1 # 背景图片的初始值,更换背景
FLAG = False # 游戏事件标识
score = False
while True:
 game_text = font1.render("飞机大战 ", 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:功能上的实现:英雄与敌军碰撞时同是消除!当英雄与敌军碰撞时替换爆炸效果图片!绘制分数!绘制炸弹显示子弹,与敌机碰撞时消除等等!

遇到问题没人解答?小编创建了一个Python学习交流QQ群:895817687 寻找有志同道合的小伙伴,
互帮互助,群里还有不错的视频学习教程和PDF电子书!

# 子弹与敌机碰撞时消除
 score += len(pygame.sprite.groupcollide(bullet_group, enemy_group, True, True)) # score分数 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)) # 绘制分数
 pygame.display.update() # 刷新界面

image.png

或许做的不是很完美,后期都是可以不断优化的!喜欢的小哥哥小姐姐,想要的可以私信!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容