Swift SpriteKit:使用未解析的标识符"播放器"?

时间:2015-09-01 19:05:02

标签: swift sprite-kit

当我尝试在精灵上运行动作时,我在String secondString = stringName.substring(80); 中设置了一个常量,我在didMoveToView函数中使用了相同的名称并得到了一个&#34 ;使用未解析的标识符:"播放器"错误。我有另一个游戏,我完全相同的东西,它运行完美。需要帮忙!这是我的代码:

touchesBegan

3 个答案:

答案 0 :(得分:0)

使player成为一个类范围变量(属性)。声明它不是在函数中,而是在上面的级别。

var player: SKSpriteNode?

override func didMoveToView(view: SKView) {

    player = SKSpriteNode ...

然后通过player?访问它。最安全的方式。

答案 1 :(得分:0)

您的问题是您在player内声明didMoveToView。这使得它对didMoveToView方法是私有的。您需要做的就是将let player = SKSpriteNode(imageNamed: "koala_idle")移动到您声明movingGround的位置以及其他变量。

您的代码应该如下所示:

import SpriteKit

class GameScene: SKScene {

var movingGround : MCTGround!
var fruitGenerator : MCTFruitGen!
var cloudGenerator: MCTCloudGen!
let player = SKSpriteNode(imageNamed: "koala_idle")

var isStarted = false

override func didMoveToView(view: SKView) {

    player.position = CGPointMake(95, 150)
    addChild(player)

答案 2 :(得分:0)

转到文件检查器(右键单击错误引用的文件,然后选择Show File Inspector)。在目标会员身份中,确保选择了您的实际应用。

就我而言,仅选择了测试模块。

据我所知(这是我的新手),所引用的文件已在 ViewController 中隐藏/未注册。