python 飞机大战搞怪版本

(飞机为迷你亚索,外星人为迷你小诺手,由于时间关系和图片素材较难寻找,仅仅做了简易版,没有贴上背景图片。由于篇幅原因,对于函数讲解较为简略,可以自行搜索相应函数的用法)

主要利用pygame内置库进行图形化处理

主要游戏界面如下:知乎视频​www.zhihu.com

基础操作:导入pygame模块首先利用screen=pygame.display.set_mode()创建一个pygame游戏窗口,参数为(width,height)

然后使用pygame.display.set_caption(),参数为你想要设置的游戏名的字符串,例如:“飞机大战”

找到图片素材,并将其绘制到屏幕上,在此需使用blit()函数将其绘制到窗口上,例如:之前的窗口为screen,则screen.blit(image,rect),其中image为需要绘制到屏幕上的图像,rect为绘制的位置的矩形,需要在之前通过pygame.Rect进行创建rect,并且设置好rect的位置。

对于屏幕上的字体,在pygame中字体的显示都是通过将字体转换为图形,然后用blit()函数绘制,首先设置字体font=pygame.font.Font(NONE,48),其中none指的是文字的字体,48指文字的大小,然后通过render函数进行转换为图形,例如,image=font.render(text,TRUE,font_color,bg_color),其中text是文字的内容,同样是字符串;TRUE指的是文字的锯齿开关;font_color是文字颜色的RGB值,bg_color为绘制处的背景颜色的RGB值,然后将image通过blit绘制出来就可以

设置主循环,对于游戏的运行,刚才所设置的所有运行后只会出现一瞬间,所以必须要将其放在while TRUE:的主循环中不停循环才能维持游戏界面

关于爆炸效果的制作,任何看起来连续的图片其实都是一帧帧图片快速播放,因为人眼的视觉停留看起来才连续,所以对于爆炸效果,只需要在子弹与外星人发生碰撞时,在外星人的位置,以一定的速度依次绘制爆炸图片就可以了;

爆炸图片如下:

以上是基础操作

主文件代码如下:

这只是主文件的代码,由于代码导入了其他文件的函数,所以无法整成运行,

具体的操作可以通过代码来看,由于代码放在多个文件中,不便全部复制粘贴到这里,以免导致代码无法运行,完整的代码及图片素材都存放在GitHub或gitee码云上,想要看的朋友可以访问,这是我的网址:

Github

Gitee

最后,如果觉得写的还可以,请点个赞,顺便GitHub给个star吧,球球各位老板了( ^ – ^ !)(> –

python飞机大战联网版_Python 飞机大战搞怪版本相关推荐

  1. python飞机大战联网版_Python实现飞机大战(搞怪)游戏!这是你没见过的全新版本!...

    (飞机为迷你亚索,外星人为迷你小诺手,由于时间关系和图片素材较难寻找,仅仅做了简易版,没有贴上背景图片.由于篇幅原因,对于函数讲解较为简略,可以自行搜索相应函数的用法) 主要利用pygame内置库进行 ...

  2. python飞机大战任务报告_Python飞机大战实战项目案例

    都说实践是检验知识掌握程度的最好测试.随着Python学习者的增长,越来越多的零基础入门课程让人眼花缭乱.虽然说基础理论的学习十分重要,但是如果仅仅只学习理论知识,也是远远不够的.飞机大战的项目实战可 ...

  3. python下载哪一个安装包_python中正确安装对应版本的包

    python在写机器学习的代码过程中,需要引入如numpy.matpoltlib.pandas等等等.有时候直接pip install+对应的包名并不能正确安装,或者安装后依旧会出现安装不完全的情况. ...

  4. python飞机大战设计思路_python飞机大战pygame游戏背景设计详解

    本文实例讲述了python飞机大战pygame游戏背景设计.分享给大家供大家参考,具体如下: 目标 背景交替滚动的思路确定 显示游戏背景 01. 背景交替滚动的思路确定 运行 备课代码,观察 背景图像 ...

  5. python飞机大战程序导入_Python飞机大战项目的准备 导入Pygame最全攻略~

    1.导入pygame 首先是导入pygame模块,下面介绍的是pycharm中导入 先建立一个项目 左上角File->Setting->project:飞机大战项目(你自己的文件名字)-& ...

  6. python飞机大战计分代码_Python 飞机大战代码练习

    Python 飞机大战代码练习 最近在自学Python,参照代码自己写了一遍飞机大战游戏的代码.主要应用的模块为pygame.整个代码如下所示,主要分为主模块和各种精灵类定义模块,记录一下自己的学习历 ...

  7. python飞机大战报告总结_python飞机大战总结

    似乎半个月没写博客了.持之以恒的勋章都掉了..现在开始补回来. 这一个月学了学py,搭了一套自己的框架. 总结下自己学到的吧, 还有去TX之前准备自己补上的部分: 1.感觉U3D什么的游戏引擎,已经帮 ...

  8. 手写坦克大战联网版(持续更新)

    用到脚本语言 javascript es5 es6 es7 node |   models |       socket.io mysql 先了解下目录结构 前端 css:游戏的一些样式 js:动态脚 ...

  9. python 怎么算l2范数_python之彻底搞懂迭代、可迭代、迭代器的区别(一)

    一.基本概念 迭代(Iteration)是动词,是指通过遍历获取某容器内所有元素,特指遍历获取这个动作. 可迭代 (iterable)是形容词,是指某容器可被遍历获取内部所有元素,特指容器内元素可被遍 ...

最新文章

  1. html前端登录验证码,前端登录页面开发_js生成验证码并验证
  2. Qt QWidget实现开关控件SwithButton(SlipButton)
  3. can协议解析字符串的原理
  4. ISCC2014-reverse
  5. 安装百分之80卡住_新车买回来要不要安装发动机护板呢
  6. java并发(3)ThreadLocal的使用及实现原理(实现原理)
  7. springMVC的文件上传于下载
  8. BP算法:原理推导数据演示项目实战1(转)
  9. 使用 charles 进行抓包
  10. 自然语言处理概述及流程
  11. 《Linux就是这种范儿》读后感
  12. Scrum敏捷开发 —实现多维度碎片化迭代
  13. 原创,呵呵(一张图看明白),USB转TTL、USB转串口、USB转232的区别
  14. 基数树结构---radix_tree
  15. 2012年全国中等职业学校计算机类专业课程创新杯教师说课,2012年全国中等职业学校建筑类专业创新杯教师教学设计和说课大赛获.doc...
  16. linux btrfs文件系统,btrfs 文件系统
  17. 图形2d,3d加速简介
  18. 阿里云MQTT_Password工具下载地址
  19. WIN7/10定时关机或重启命令行脚本代码集锦
  20. 设计师找灵感,这5个网站就够了

热门文章

  1. 计算机视觉——计算视差图
  2. 【知识图谱】关系抽取与总结展望
  3. 悼念512汶川大地震遇难同胞——选拔志愿者
  4. 我大抵是病了,横竖都睡不着。
  5. 张正友标定法几个坐标系的意思
  6. python如何安装pil库_Python安装PIL库
  7. 你必须知道的 10 个元宇宙最佳案例
  8. 国庆中秋除了发月饼,企业更应该做什么?
  9. oppor15可以升级鸿蒙,关于OPPO R15你不能不知道的八大升级
  10. 利用jieba分词分析小说三