将我的Coins变量传递给另一个场景

时间:2016-05-19 18:06:50

标签: xcode swift struct sprite-kit in-app-purchase

我想将我的变量从GameScene.swift传递给CoinScene.swift。我知道我可以使用struct但我不知道如何使用它。每次我尝试它,它都不起作用。在GameScene.swift中我有可变硬币:

var coins = Int()

在CoinScene.swift中我使用iAP,如果用户购买100枚硬币则需要更新。 我使用的功能:

func addCoins100() {
    coins + 100

}

但这不会起作用,因为这两个"硬币之间没有联系。 我应该在哪里以及如何使用结构,还是有其他方法可以做到这一点?

我将此代码设置在GameScene.swift的顶部:

struct coins {
static var coinVariable = "coins"

}

然后在CoinsScene.swift:

let coins = coins.coinVarible

这不起作用。有人有想法解决这个问题吗? 我是初学者,不是很好,但渴望学习。非常感谢你。

2 个答案:

答案 0 :(得分:0)

您将coinVariable设置为字符串硬币,而不是可变硬币。这就是我要做的事情:

struct coins{
    var coinCount = 0
}

然后当你想在CoinScene.swift中设置硬币时使用

func addCoins100() {
    coins.coinCount += 100
}

每当您想要访问硬币时,只需使用coins.coinCount

答案 1 :(得分:0)

您也可以使用:

GameScene.swift中的

static var coins = Int()
在CoinsScene.swift中

func addCoins100() {
    GameScene.coins + 100
}

小心这种方法

相关问题