使用Pygame制作游戏1

本文是针对已有Python和pygame基础知识的学习者的一份教程,旨在教授如何制作一个简单的乒乓游戏TomPong。内容涵盖游戏设计概念、球的物理模拟、代码组织结构和编码风格。通过本教程,读者不仅能深化对pygame的理解,还能学习到如何创建和扩展游戏。
摘要由CSDN通过智能技术生成

1.介绍:
首先,我假设您已经阅读了Line By Line Chimp教程,该教程介绍了Python和pygame的基础知识。
在阅读本教程之前先阅读它,因为我不会重复教程的内容(或者至少不会那么详细)。
本教程针对的是那些了解如何制作一个可笑的简单的小“游戏”,谁想要制作一个相对简单的游戏,如乒乓。
它将向你介绍一些游戏设计概念,一些简单的数学方法去解决球的物理问题,以及一些能够让你的游戏更容易维护和扩展的方法。
本教程中的所有代码都是为了实现我所编写的游戏《TomPong》。
在本教程结束时,您不仅应该更牢固地掌握pygame,还应该理解TomPong如何工作,以及如何制作自己的版本。
现在,简单回顾一下pygame的基础知识。
组织游戏代码的常见方法是将其划分为以下6个部分:
·加载游戏中需要的模块。
标准的东西,除了你应该记住导入pygame局部名称以及pygame
·模块本身的资源处理类;
定义一些类来处理你最基本的资源,这将是加载图像和声音,以及连接和断开网络,加载保存的游戏文件和任何其他资源,你可能有。
·游戏对象类;
为你的游戏对象定义类。
在《pong》的例子中,这将是一个针对玩家的球棒(你可以多次初始化它,一个针对游戏中的每个玩家),另一个针对球(游戏邦注:它也可以拥有多个实例)。
如果你想要拥有一个很棒的游戏内菜单,那么制作一个菜单类也是一个好主意。
·任何其他游戏功能;
定义其他必要的功能,如记分牌、菜单处理等。
你可以将任何代码放入主游戏逻辑中,但这会让理解逻辑变得更加困难,你应该将其放入其自身的功能中。
因此,绘制计分板并不是游戏逻辑,它应该被移到函数中。
·初始化游戏,包括pygame对象本身、背景、游戏对象(初始化类的实例)和任何其他你可能想要添加的代码。
·在主循环中,你需要将任何输入处理(如观察用户点击按键/鼠标按钮),用于更新游戏对象的代码,以及最后用于更新屏幕。
你所创造的每一款游戏都将拥有这些部分或全部内容,并可能包含更多你自己的内容。
出于本教程的目的,我将讲述《TomPong》是如何布局的,我所写的理念可以用于任何类型的游戏中。
我还会假设你想要将所有代码保存在一个文件中,但如果你制作的是一款相当大的游戏,那么将某些部分放入模块文件中通常是个好主意。
例如,将游戏对象类放到一个名为objects.py的文件中,可以帮助你将游戏逻辑与游戏对象分开。
如果您有很多资源处理代码,那么将它们放入resources.py中也很方便。
然后你可以从对象、资源导入*来导入所有的类和函数。

1.1。关于编码风格的说明
在进行任何编程项目时,首先要记住的是确定编码风格,并保持一致。Python解决了很多问题,因为它对空格和缩进的严格解释,但你仍然可以选择缩进的大小,是否将每个模块导入到新行,如何注释代码,等等。您将在代码示例中看到我是如何做到这一切的;
您不需要使用我的风格,但是无论您采用哪种风格,都要在整个程序代码中使用它。
还要尝试记录所有的类,并对任何看起来模糊的代码进行注释,但是不要开始注释明显的部分。我见过很多人这样做:

player1.score += scoreup        # 添加scoreup到player1得分

最糟糕的代码是布局糟糕、样式上的随机变化和糟糕的文档。糟糕的代码不仅会让其他人感到厌烦,而且也会让您难以维护。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值