Xcode 8 / Swift 3:将所有变量重置为初始值

时间:2017-08-05 21:05:49

标签: ios swift xcode

当触发gameOver()函数时,我希望当用户按下重启时,所有变量都会重置为原始的,未更改的值(如在ViewController文件中指定的值) 按钮。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

根据您拥有的特定变量,一种解决方案是创建具有固定初始值的结构,并将其分配给Restart函数中的活动游戏变量。

答案 1 :(得分:0)

您可以定义一个将变量重置为默认值的函数,如下所示:

func resetGame(){
    score = 0 // or default value
    life = 3 // or default value
    //.... and so on
}

假设重启按钮已连接到此功能

@IBAction func restartGame(sender: UIButton){
   gameOver()
   resetGame()
}

你可以在重启按钮功能中调用gameOver()后调用此函数。

如果您的问题是关于如何声明默认值,您可以使用struct,因为杰伊说:

struct DefaultValues {
    let score = 0
    let lifes = 3
    let level = 1
}

和resetGame()将是这样的:

func resetGame(){
    score = DefaultValues().score
    life = DefaultValues().life
    level = DefaultValues().devel
}