pygame相关内容

Python - 创建一个运行编写的代码的 EXE,而不是编译时的代码

我正在制作一个设计为模块化的 pygame 程序.我正在用文件 main.py 的 pygame2exe 构建一个 exe,它基本上只是导入真正的主游戏并运行它.我希望的是一种可以从 EXE 执行 Python 脚本的启动器,而不是包含所有不可变文件的单个程序. 解决这个问题的最佳方法是什么?我曾尝试使用 imp 在运行时动态导入所有模块,而不是隐式导入它们,但这似乎破坏了对象继承. ..
发布时间:2022-01-02 10:46:23 Python

有没有一种有效的方法来制作拖放多个png的功能?

我正在制作一个国际象棋游戏,但我完全停留在拖放元素上,有一些指南,但它们要么拖动形状,要么只拖动一个图像. 我尝试了多种代码变体,但为了移动一个.png,所有代码都超过了 50 行,而且大多数代码效率低得令人难以置信 pygame.init()pygame.display.set_caption("蟒蛇国际象棋")时钟 = pygame.time.Clock()红色 = (213,43,6 ..
发布时间:2022-01-02 10:46:15 Python

用 pygame.midi 演奏音符

我正在尝试使用 pygame.midi 模块播放声音.这是我的代码使用: #!/usr/bin/env python导入pygame.midi导入时间pygame.midi.init()打印 pygame.midi.get_default_output_id()打印 pygame.midi.get_device_info(0)玩家 = pygame.midi.Output(0)player.se ..
发布时间:2022-01-02 10:46:07 Python

在哪里可以找到并安装 pygame 的依赖项?

我对 linux 比较陌生,正在尝试为 python 安装 pygame 开发环境.当我运行 setup.py 时,它说我需要安装以下依赖项,我找到并安装了其中之一(SDL).然而,其他的则更加难以捉摸. 正在寻找依赖项...sh: smpeg-config: 命令未找到警告:“smpeg-config"失败!SDL:发现 1.2.14字体:未找到图片:未找到混合器:未找到SMPEG:未找到PN ..
发布时间:2022-01-02 10:45:57 服务器开发

Pygame 绕轴旋转立方体

我一直在玩旋转立方体的例子 此处.我生成了 2 个应该绕 Y 轴旋转的立方体.但是,它似乎没有按预期工作,我无法弄清楚它的问题是什么. 这是一个工作代码示例: 导入系统导入数学导入pygame从 pygame.math 导入 Vector3从枚举导入枚举类颜色(枚举):黑色 = (0, 0, 0)银 = (192,192,192)类立方体():def __init__(self,vecto ..
发布时间:2022-01-02 10:45:39 Python

如何在图像的比例变大时围绕其中心旋转图像(在 Pygame 中)

我加载了一个图像,我希望它围绕它的中心旋转,同时它的比例越来越大.我知道如何最初围绕其中心旋转图像,但如果比例越来越大,我很难计算位置.我试过了,但图像只是“跳舞",而不是停留在中心. 解决方案 简答: 存储源图像矩形的中心,并通过存储的中心位置更新旋转和缩放操作后旋转和缩放的图像矩形的中心.通过 pygame.transform.rotozoom 旋转和缩放图像(): def b ..
发布时间:2022-01-02 10:45:14 Python

如何在 pygame 中聚焦光线或如何仅绘制窗口的某些圆形部分?

为此,如果你熟悉它,想想超级马里奥制造商 2 中嘘声级别的黑暗模式.我试图在角色周围创建一个圆形聚光灯,这也将使圆圈范围内的任何东西都可见(例如,站立的地板的一部分,敌人或场景中的任何其他东西).我的计划是先画圆圈/聚光灯,然后是场景,然后是角色.然后我希望聚光灯下没有突出显示的任何东西都被涂黑. 所以我的问题是: 有人知道如何填满整个屏幕,除了圆圈内的内容吗? 解决方案 我提 ..
发布时间:2022-01-02 10:45:05 Python

当用户单击它时如何移动无框架 pygame 窗口?

我会创建一个 pygame 窗口,它没有框架,但是当用户点击它并移动鼠标时会移动.所以我尝试了这个脚本,但是当我点击窗口时,打印的是“0"而不是“1" 但是我的脚本有问题 # coding : utf-8导入pygame从 pygame.locals 导入 *来自随机导入 randint从操作系统导入环境从数学导入 sqrtpygame.init()max_fps = 250时钟 = py ..
发布时间:2022-01-02 10:44:44 Python

如何在 Pygame 中获得显示器的分辨率?

我只是想知道是否有可能在 Pygame 中获得显示器的分辨率,然后使用这些尺寸创建一个窗口,以便启动程序检测显示器分辨率,然后自动使窗口适合屏幕全屏显示. 我目前正在使用 pygame.display.set_mode((AN_INTEGER, AN_INTEGER)) 创建窗口.我知道您可以使用 pygame.display.Info() 获取视频信息,包括显示器分辨率,但是我如何提取这些 ..
发布时间:2022-01-02 10:44:20 Python

pygame.error“无法打开image.png";仅在命令提示符下

我编写了一个非常简单的 Python 程序来学习 pygame,此外我还使用了图像. 当我用 PyCharm 运行程序时,或者当我通过双击文件运行它时,它工作正常.但是,如果我尝试通过命令提示符运行它,则会出现以下错误: C:\Users\julix>C:\Users\julix\Documents\test\pygame_tutorial.pypygame 1.9.4来自 pygame ..
发布时间:2022-01-02 10:43:57 Python

减速Pygame后如何修复角色在两个方向上不断加速?

我能够成功地在我的 Pygame 游戏中实现加速,但是有一点问题.问题是:角色减速后,角色会开始向一个方向加速,减速并开始向另一个方向加速,减速并开始向相反方向加速,无休止地重复这两件事.我怎样才能让它停止? 这是我为加速编写的代码: 如果 move_R == True:加速度 = PLAYER_ACCEL如果 move_L == True:加速 = -PLAYER_ACCEL加速 += ..
发布时间:2022-01-02 10:43:13 Python

如何在pygame中进行双跳?

有人可以帮我调试我的代码,因为我不明白为什么我不能让我的角色用多个空格键进行双跳.当我运行脚本时,我可以向上、向下、向左、向右移动,但是一旦我按一次空格键,对象就会飞出窗口. 问题来自这个 if 语句,所以我猜这个 if 语句会继续运行并增加我的 jumpCount,我无法理解,因为按一次空格后不应该 keys[pygame.K_SPACE] 评估为真,然后再次返回假,所以除非我按另一个空格 ..
发布时间:2022-01-02 10:42:55 Python

如何在用按键移动的同时在 pygame 中转动精灵

所以基本上我一直希望可以有效地转动你的精灵,同时用 WASD.任何想法,因为我肯定难倒,谢谢! 解决方案 参见 如何使用 PyGame 围绕其中心旋转图像? 用于旋转表面.如果您想围绕中心点 (cx, cy) 旋转图像,您可以这样做: rotated_car = pygame.transform.rotate(car, angle)window.blit(rotated_car,rota ..
发布时间:2022-01-02 10:42:33 Python

如何在一个背景图像上移动播放器?

抱歉最近问了这么多问题.我刚刚开始进入 pygame.对于我之前的问题,我认为我的措辞不正确. 这是我尝试演示的快速图片 这是我希望玩家移动的单个背景图像或地图.红色的 X 只是角色的起始位置.我试图做到这一点,当我移动玩家时,背景也会跟随,就好像玩家在地图上移动一样.我已经限制玩家不能离开实际屏幕的边界.现在尝试制作它时遇到了一些麻烦,因此单个图像将沿着玩家移动,如果玩家到达地图图片 ..
发布时间:2022-01-02 10:42:16 Python

Pygame 如何修复“尾随像素"?

在图像中,红色轨迹是 pygame 在精灵周围添加边界矩形时创建的轨迹.精灵也这样做,最简单的解决方案是在每次重绘后将表面清除为黑色.然而,试图在整个主表面上这样做并不是一个好主意.我该如何解决这个问题? 解决方案 通常你会这样做: def draw():# 用纯色填充屏幕.# 绘制和翻转/更新屏幕. 但是,您可以只更新屏幕的脏部分.请参阅pygame.display.update() ..
发布时间:2022-01-02 10:41:59 其他开发

Pygame:有没有什么简单的方法可以找到按下的任何字母数字的字母/数字?

我目前正在开发的游戏需要让人们以他们的名义在高分榜上打发时间.我对如何处理按键有点熟悉,但我只处理了寻找特定按键的问题.有没有一种简单的方法可以让任何按键的字母按下而不必做这样的事情: 用于 pygame.event.get() 中的事件:如果 event.type == KEYUP:如果 event.key == K_a:新字母 = 'a'elif event.key == K_b:新字母 ..
发布时间:2022-01-02 10:41:51 Python

尝试使用 pygame 创建声音时出现错误

我在尝试使用 pygame 添加声音时遇到错误.我已将所有 .wav 文件与 python 脚本放在同一目录中.这是我第一次使用pygame,所以我一无所知. 导入pygamepygame.init()pygame.mixer.init()尝试:person_sound = pygame.mixer.Sound("person.wav")pygame.mixer.Sound.play(perso ..
发布时间:2022-01-02 10:41:24 Python

Android 上的 Pygame

我想知道是否有人可以详细解释如何在 Android 手机上运行使用 Pygame 开发的游戏/应用程序.我最近完成了 PacMan 的编程,它在我的电脑上运行良好,但我认为如果我能在我的手机上运行它会很棒.我尝试按照 http://pygame.renpy.org/android-packaging 上的说明进行操作.html,但是每次我在 IDLE 上运行“import android"时,我都 ..
发布时间:2022-01-02 10:40:55 移动开发

rect 与 rect 列表的冲突

我有代码 player_rect.colliderect(tile_rects): 其中 player_rect 是单个 Rect 和 tile_rects 是 Rect 的列表. 我收到错误 `builtins.TypeError: 参数必须是矩形样式对象 当我尝试运行我的代码时(大概是因为代码不喜欢在单个矩形上有一个矩形列表). 我也刚刚发现,当我切换 tile_rects ..
发布时间:2022-01-02 10:40:39 Python

Pygame 如何让球碰撞

我想在 pygame 中编写一个脚本,其中两个球相互飞来飞去,当它们碰撞时,它们应该相互弹开,但我不知道该怎么做,所以你能帮我吗? 解决方案 要检测 2 个圆(分别是球)是否碰撞,您必须测试 圆心点之间的欧几里得距离小于半径之和.我建议使用 pygame.math.Vector2/distance_to() 用于计算. 下面的 1 圆由中心点 (x1, y1) 和半径 r1 定义.第二个 ..
发布时间:2022-01-02 10:40:13 Python