我正试图改变场景的球员一旦击中一个绿色方块,我有一个问题,改变到下一个层次的场景。在我的项目中,我有Level2Scene.swift和Level2Scene.sks我使用Level2Scene.sks来设计级别,我使用Level2Scene.swift来控制场景中发生的事情。这是我的代码,当玩家点击绿色方块时我有。

func didBeginContact(contact: SKPhysicsContact) {

    var bodyA = contact.bodyA
    var bodyB = contact.bodyB

    var transition: SKTransition = SKTransition.fadeWithDuration(1)
    let scene: SKScene = Level2Scene(fileNamed: scene!.size)

    if bodyA.categoryBitMask == 1 && bodyB.categoryBitMask == 2 || bodyA.categoryBitMask == 2 && bodyB.categoryBitMask == 1{

        self.view?.presentScene(scene, transition: transition)
    }
}

问题出在let scene:SKScene=Level2Scene(文件名:scene!.尺寸)
错误显示“变量在其初始值内使用”

最佳答案

我觉得这很奇怪。。

let scene: SKScene = Level2Scene(fileNamed: scene!.size)

尝试
let scene: SKScene = Level2Scene(size: self.size)

09-25 18:44