当前位置: 首页 > 后端技术 > Python

01:基础套路,学习python游戏开发,这个你不能错过吗?

时间:2023-03-26 13:42:46 Python

声明:原创不易,未经允许不得转载。最近猫老师忙于python编程的入门课程。她在抖音更新了57集。从0开始学习python编程的朋友可以上抖音(抖音个人主页)看看。绝对不会让你失望!好了,继续今天的比赛吧。今天猫姐就在抖音为大家带来一款经典游戏。在游戏中,一个孩子需要接住从天而降的蘑菇,但他只能接住没有毒的蘑菇。如果你抓住了毒蘑菇,游戏就结束了!这个游戏虽然很简单,整个游戏的代码也只有200多行,但是却包含了python游戏编程70%的核心知识点,所以只要你看懂了这个游戏的所有代码!可以开始开发自己的python小游戏了,比如打飞机,打仓鼠这种小游戏你肯定可以写!这个游戏虽然很简单,但是为了让小伙伴们真正学会python游戏编程,猫姐会分几个视频一步步教大家写这个游戏。今天的节目,我们先来学习一下python游戏编程的基本套路。学完这个套路,下一期猫姐会在第一期的代码基础上,实现一个方向键控制的小盒子。是这样的。当然,这个立方体最后会变成采蘑菇的小孩!话不多说,进入正题!一、python游戏开发的基本套路本期猫姐给大家简单介绍一下pygame。pygame是python游戏开发的框架。使用这个框架,我们可以用python语言快速开发各种游戏。所以在编写游戏代码之前,还是需要先了解一下pygame的基本工作原理。2.了解pygame的基本框架首先我们新建一个part1-game.py文件,然后打开这个文件开始写代码!我们导入pygame、locals和sys模块供以后使用。importpygamefrompygame.localsimport*importsys接下来通过pygame的init函数完成游戏的初始化,因为我们使用的游戏框架是pygame,使用前需要初始化,所以不用去知道太多细节,只知道有必要,就像我们吃饭前洗手、拿筷子一样。pygame.init()初始化完成后,由于我们的游戏是在一个窗口中运行的,所以我们需要在这里创建一个窗口。让我们首先定义窗口的宽度和高度。创建窗口可以通过函数pygame.display.set_mode来实现。在set_mode函数的括号中,需要传入游戏窗口的宽高。这个函数会得到一个返回值,我们使用screen变量来存储这个返回值。WIDTH=600HEIGHT=800screen=pygame.display.set_mode((WIDTH,HEIGHT))现在运行程序看效果,点击鼠标右键,选择Run+part1-game,程序运行后可以看到窗口一一瞬间,它消失了。为什么窗口消失了?这是因为代码从上到下运行成功后就退出了,而真正的游戏需要不断的刷新窗口,将内容显示在屏幕上,所以我们还需要使用whileTrue的死循环,让代码不会戒掉。在whileTrue循环内,使用pygame.display.update函数更新屏幕上显示的内容。在这里我们可以看到更完整的代码。importpygamefrompygame.localsimport*importsyspygame.init()WIDTH=600HEIGHT=800screen=pygame.display.set_mode((WIDTH,HEIGHT))whileTrue:#更新屏幕内容pygame.display.update()现在再次运行程序看一下效果,点击鼠标右键,选择Run+part1-game,程序运行后,可以看到窗口不会消失(一直显示)。接下来,我们点击窗口右上角的关闭按钮,可以看到程序现在处于无响应状态。这是因为我们的程序不知道如何处理鼠标点击(关闭菜单)事件,所以在while循环中,我们还需要处理鼠标点击关闭菜单事件。在pygame中,处理鼠标或键盘事件非常简单。我们需要使用for循环遍历pygame.event.get函数,通过pygame.event.get函数可以获取到鼠标或者键盘的事件列表。然后通过event.type判断事件是否等于QUIT(点击窗口x产生QUIT事件)。如果event.type等于QUIT,则系统退出。whileTrue:foreventinpygame.event.get():ifevent.type==QUIT:sys.exit()pygame.display.update()运行程序看效果,点击鼠标右键选择Run+part1-game,程序运行后,点击关闭窗口右上角的按钮,窗口将退出。