我在pygame中退出无限循环时遇到问题

时间:2012-03-27 02:03:38

标签: python pygame

Code 这是我的小猪游戏。我只为2名玩家编码。我已经运行了多个场景,似乎效果很好。 我似乎无法退出while循环

我在#109行遇到了麻烦。

我把它设置为打破,但我相信它可能会从我不想要的小if语句中突破。

我想要摆脱大回路(游戏循环)第100行

我也想用pygame添加我创建的骰子图形。

我想知道我是否可以按原样保存我的代码,只是修改它以便轻松地使用pygame,或者我是否更改了整个代码以使用pygame?

我只是想做一个简单的界面 它将类似于:http://cs.gettysburg.edu/projects/pig/pi ...

但我会添加骰子,模拟骰子滚动2d,声音,获胜状态图形和声音,以及输入,主要是鼠标切换。

非常感谢有关如何进行pygame部分的任何提示。

我已经阅读了很多关于pygame的教程,但我对自己的游戏没有信心。

我做了一个球反弹,但我真的不明白pygame的代码是什么意思。

我对显示屏与背景有点困惑

屏幕将是pygame.display.set_mode((某种尺寸))

然后背景将捕获屏幕的确切大小,但不是很确定。

我已经想出如何在屏幕上放置骰子,并且每半秒换脸一次,但就是这样。

2 个答案:

答案 0 :(得分:0)

好的小程序。它似乎对我来说很好(打破退出for和while循环,而不是如果)。

当你玩游戏时,它有点令人困惑,因为只有在其他玩家玩之后再进入“保持”状态,才会检查是否有人获胜。也许这就是让你觉得它不起作用的原因?在'hold'运行的代码之后立即检查获胜可能会更好(我不知道猪的确切规则)?

抱歉对不起pygame;只是想发帖说它似乎有用。

另外,如果你愿意,你可以把两个玩家放在一个阵列中:

players = [player1, player2]

然后当前的玩家将是:

players[player_turn-1]

你可以为任何一个播放器使用相同的代码,复制主循环中的逻辑。所以代码更像是:

if players[player_turn-1].winner():
    ...

答案 1 :(得分:0)

#Make a Variable set it to "False".
#= means to assign something to something.
#== means equal to.
#Example in a if statement if something == to something do something.
test = False

#This is the loop.
while test == False:
    #Put Code Here.
    #Put a If Statement `enter code here`to stop loop.
    if #Parameters:
        test = True