900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > python飞机大战联网版_Python 飞机大战搞怪版本

python飞机大战联网版_Python 飞机大战搞怪版本

时间:2022-08-06 09:46:46

相关推荐

python飞机大战联网版_Python 飞机大战搞怪版本

python 飞机大战搞怪版本

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

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

主要游戏界面如下:知乎视频​

基础操作:导入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绘制出来就可以

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

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

爆炸图片如下:

以上是基础操作

主文件代码如下:

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

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

Github

Gitee

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。