可以在Spritekit的update()函数中调用函数

时间:2015-03-15 18:16:47

标签: ios swift sprite-kit

我正在用Swift和Spritekit编写一个小型2D游戏。 我有一个gameOver()函数,它使视图转到另一个场景(结束游戏),它在touchesBegan()函数中工作正常,但在条件满足时更新()函数它只是冻结游戏,没有& #39;去新场景,问题是什么?    我的猜测是update()函数只有1帧的时间来完成作业,而且它不能在那么短的时间内完成gameOver()函数,是吗?

以下是代码:

override func update(currentTime: CFTimeInterval) {
    if hero.position.y <= 0 {
        gameOver()
    }}

1 个答案:

答案 0 :(得分:1)

您的更新方法可能是重复调用gameOver方法。你需要在第一次调用时添加一个BOOL并将其设置为true,只需要调用一次。