我在Pygame中的游戏有一些问题。我希望窗口右上角的十字架在点击时退出游戏。但它似乎不起作用。我还希望它从空格键获取输入并掷骰子。
diceRoll = random.randint(1, 4)
while True:
events = pygame.event.get()
for event in events:
if event.type == pygame.KEYDOWN:
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.key == pygame.K_SPACE:
diceRoll
代码的其余部分都在下面,但是当我用这个循环时,屏幕会变黑。
您的第一个if
语句犯了一个很大的错误。您应该有事件。键入相互对齐的
行。您正在这样做:
if event.type == pygame.KEYDOWN:
if event.type == pygame.QUIT:
当您应该这样做时:
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.KEYDOWN:
pass #Put your other code here
第二个错误是,您从来没有把pygame.quit
放在time循环中。它会退出游戏/让屏幕上什么都没有,让你的程序变得疯狂。在循环中安全退出程序的唯一合乎逻辑的方法是使用sys.exit()
。因此,您的新而循环应该是:
while True:
events = pygame.event.get()
for event in events:
if event.type == pygame.QUIT:
sys.exit()
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
print 'diceRoll' #Doing diceRoll alone won't do anything
pygame.quit() #This is the proper location of this function
希望这对你有所帮助!
要让PyGame正确退出,必须执行以下操作
if event.type == pygame.QUIT:
pygame.quit()
# perhaps force a quit using sys.exit()
如果您处于循环中,还应该使用break
对于空格键事件,您已经完成了一半。
if event.key =0 pygame.K_SPACE:
roll_dice()
本文向大家介绍pygame实现打字游戏,包括了pygame实现打字游戏的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了pygame实现打字游戏的具体代码,供大家参考,具体内容如下 1.基本代码 下面的代码完成了每一秒在界面的顶部随机生成一个新的字母 2.移动字母 先增加一个定时器,设定字母20毫秒移动一格 在主循环中加入移动的代码 3.消除字母 在事件的处理代码中加入对键盘字母的判断
本文向大家介绍python pygame实现2048游戏,包括了python pygame实现2048游戏的使用技巧和注意事项,需要的朋友参考一下 实现2048相对来说比较简单,用4*4的二维数组保存地图,pygame.key.get_pressed()获取键盘操作,详见代码。 效果图 代码 后续可以考虑实现动画和AI。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程
所以我正在用Pygame制作一个游戏,我需要一个菜单,让玩家在不同的游戏类型之间进行选择。我试着让它在显示指令时,玩家可以使用键盘选择类型;然而,当我这样做的时候,游戏就会出错。指示将保留在屏幕上(有时会绘制平面精灵)。当按下时,我添加了一行代码来打印shell中的某些内容,但没有打印任何内容。 注释掉的部分是启动游戏的原始代码。
您好,我正在中制作一个游戏,我想知道如何以及最好的方式是在屏幕上添加游戏。以下是玩家健康状况小于或等于0的代码: 我不确定该怎么做,因为我试图使用另一个py呼叫游戏,但玩家死亡的时间被重置为0并返回,所以玩家死亡的地方可能发生任何事情吗?
本文向大家介绍pygame游戏之旅 如何制作游戏障碍,包括了pygame游戏之旅 如何制作游戏障碍的使用技巧和注意事项,需要的朋友参考一下 本文为大家分享了pygame游戏之旅的第6篇,供大家参考,具体内容如下 定义一个障碍模型函数: 在游戏循环中调用: 障碍消失之后修改x值: 全部代码: 结果图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
我曾经以小程序的形式运行我的程序,当时运行良好,但我决定尝试让它在JFrame中运行。我最近遇到了覆盖问题,但我想我终于解决了这个问题。这是我最近一直在做的一个游戏,它基本上是Flappy Bird的再创造。我不打算出售我的完成版,因为我相信功劳不属于我。现在我正在寻找一个管道穿过屏幕,我计划在任何给定的时间在屏幕上最多制作3组管道。 帧未打开的修复错误新错误:不希望的输出 这是我的主要课程(游戏