我正在尝试在玩家点击绿色框后更改场景,但我在将场景更改到下一个级别时遇到问题。在我的项目中,我有 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场景:SKScene = Level2Scene(fileNamed: scene!.size) 错误显示“在其自身初始值内使用的变量”
最佳答案
我觉得这很奇怪..
let scene: SKScene = Level2Scene(fileNamed: scene!.size)
尝试
let scene: SKScene = Level2Scene(size: self.size)
关于swift - 在 spritekit swift 问题中更改场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36143247/