2017-04-09 4 views
-1

Ich habe ein Spiel, und ich versuche, eine andere Szene als GameScene zu laden. Diese Szene heißt MenuScene. Ich habe sowohl eine .sks-Datei als auch eine .swift-Datei für MenuScene, beide als MenuScene bezeichnet. Das Ausführen des folgenden Code in GameViewController, kann ich zumindest Last MenuScene.sksSwift: Probleme beim Laden von SKScenes

if let view = self.view as! SKView? { 

     if let scene = SKScene(fileNamed: "MenuScene") { 
      scene.scaleMode = .aspectFill 
      view.presentScene(scene) 
     } 

     view.ignoresSiblingOrder = true 
     view.showsFPS = false 
     view.showsNodeCount = false 
    } 

Ich glaube nicht, dass MenuScene.swift obwohl zugegriffen wird. Ich weiß, dass didMove (um zu sehen:) nicht aufgerufen wird, und ich dachte, dass, wenn eine .sks-Datei geladen wird, die entsprechende swift-Datei auch ausgeführt wird, aber das scheint nicht der Fall zu sein. Ich habe Code in MenuScene.Swift, dass ich ausgeführt werden muss, aber ich kann nicht herausfinden, warum es nicht ausgeführt wird. Hilfe.

Antwort

0

Das hier Problem ist, dass in Xcode, müssen Sie explizit MenuScene.sks zu MenuScene.swift

Um dies zu tun, öffnet MenuScene und nach rechts, um das Menü gehen zu verbinden. Klicken Sie auf die Registerkarte Benutzerdefinierte Klasseninspektoren. Dann müssen Sie MenuScene in das benutzerdefinierte Klassenformular eingeben.

enter image description here

, dass die beiden Dateien verbinden, so dass, wenn Sie die Szene präsentieren, Xcode weiß, was zu öffnen.

Verwandte Themen