3

❤️ 如何在 Pygame 中移动你的游戏角色 ❤️

 3 years ago
source link: https://blog.csdn.net/qq_44273429/article/details/120157888
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

❤️ 如何在 Pygame 中移动你的游戏角色 ❤️

作者:海拥

主页:https://haiyong.blog.csdn.net/

Pygame是一组跨平台的 Python 模块,专为编写视频游戏而设计。它包括旨在与 Python 编程语言一起使用的计算机图形和声音库。您可以使用 pygame 创建不同类型的游戏,包括街机游戏、平台游戏等等。

使用的图像:

你可以控制玩家的移动。为此,首先使用 pygame 的 display.set_mode() 方法创建一个显示对象,并使用 pygame 的 image.load() 方法添加玩家的精灵。set_mode() 函数用于初始化显示表面或窗口。size 参数是一对代表宽度和高度的数字。flags 参数是附加选项的集合。depth 参数表示用于颜色的位数。

语法:

set_mode(size=(0, 0), flags=0, depth=0, display=0, vsync=0) 

创建一个变量来存储玩家的速度。设置玩家的初始坐标。现在,根据键盘事件(即键状态改变时发生的事件)更改播放器的 x 和 y 坐标。

blit(surface,surfacerect) 函数用于在屏幕上绘制图像。

语法:

blit(surface, surfacerect)

为了从队列中收集所有事件,使用事件模块的 get() 函数,然后我们使用 for 循环迭代所有事件。

语法:

get(eventtype=None)

使用显示模块的 update() 函数更新屏幕。

语法:

update(rectangle=None)

下面是实现

示例:玩家移动程序

输出:

 玩家也可以连续移动。为此,除了要进行一些更改外,其他一切都保持不变。在这里,我们创建了一个新的时钟对象来使用 clock() 控制游戏的帧速率。

Clock()

 创建一个新变量(名为 key_pressed_is)来存储用户按下的键。为此,我们使用 key 模块的 get_pressed() 函数。

get_pressed()

它返回一个布尔值序列,表示键盘上每个键的状态。

示例:连续移动玩家

 输出:

翻转玩家精灵

您可以使用 pygame 的转换模块的 flip() 函数轻松翻转任何精灵。例如,如果我们想在玩家改变移动方向时翻转精灵,那么我们可以使用下面的代码 

window.blit(pygame.transform.flip(image, False, True), (x,y))

flip() 函数用于水平、垂直翻转表面对象。 或两者。 这个函数有三个参数:

  • 要翻转的图像
  • 进行水平翻转的布尔值
  • 进行垂直翻转的布尔值

下面是实现。

示例:翻转播放器图像

输出:

 我们还可以通过创建精灵列表轻松更新玩家精灵。

示例:更新精灵

换张图试试

 更多和Python相关的文章

❤️【python入门项目】使用 Python 生成二维码❤️

❤️【python入门项目】使用 Tkinter 的 日历 GUI 应用程序❤️

❤️【python入门项目】将学妹的照片转换为铅笔素描 ❤️

❤️ 手把手教你使用 Python 制作贪吃蛇游戏 ❤️ 

❤️ 使用 python 的单人AI 扫雷游戏 ❤️

我已经写了很长一段时间的技术博客,并且主要通过CSDN发表,这是我的一篇 Web 响应式可过滤的游戏+工具展示页面教程。我喜欢通过文章分享技术与快乐。您可以访问我的博客: https://haiyong.blog.csdn.net  以了解更多信息。希望你们会喜欢!😊

💌 欢迎大家在评论区提出意见和建议!💌

如果你真的从这篇文章中学到了一些新东西,喜欢它,收藏它并与你的小伙伴分享。🤗最后,不要忘了❤或📑支持一下哦。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK