¿Cómo crear un menu principal para un juego spritekit hecho con swift en xcode?

Creé un juego realmente simple en xcode usando spritekit y swift. He terminado de codificar el juego en sí. Ahora quiero crear un menu principal para que cuando el juego se abra, habrá un menu con botones, ya sea en la configuration o en el inicio del juego. No tengo idea de cómo puedo hacer esto. ¿Debería usar storyboard? Y si es así, ¿cómo puedo implementarlo en xcode? Gracias a todos 🙂

Swift 3.0

import SpriteKit class MenuScene: SKScene { var playButton = SKSpriteNode() let playButtonTex = SKTexture(imageNamed: "play") override func didMove(to view: SKView) { playButton = SKSpriteNode(texture: playButtonTex) playButton.position = CGPoint(x: frame.midX, y: frame.midY) self.addChild(playButton) } override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { if let touch = touches.first { let pos = touch.location(in: self) let node = self.atPoint(pos) if node == playButton { if let view = view { let transition:SKTransition = SKTransition.fade(withDuration: 1) let scene:SKScene = GameScene(size: self.size) self.view?.presentScene(scene, transition: transition) } } } } } 

Crea dos nuevos files. Una escena de kit de sprite y un file táctil de cocoa. Nómbralos igual, por ejemplo, MenuScene. Para crear los files, click la carpeta en la barra lateral de su proyecto xcode. Luego, para que el progtwig MenuScene se muestre al ejecutar su aplicación, ingrese al file GameViewController. Hay una línea debajo de viewDidLoad . if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene { if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene { cambia esto a if let scene = MenuScene.unarchiveFromFile("MenuScene") as? Menu Scene { if let scene = MenuScene.unarchiveFromFile("MenuScene") as? Menu Scene { Luego en su MenuScene, debe tener un button que lo guíe a su GameScene

 import SpriteKit class MenuScene: SKScene { var playButton = SKSpriteNode() let playButtonTex = SKTexture(imageNamed: "play") override func didMoveToView(view: SKView) { playButton = SKSpriteNode(texture: playButtonTex) playButton.position = CGPointMake(frame.MidX, frame.midY) self.addChild(playButton) override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) { if let touch = touches.first as? UITouch { let pos = touch.locationInNode(self) let node = self.nodeAtPoint(pos) if node == playButton { if let view = view { let scene = GameScene.unarchiveFromFile("GameScene") as! GameScene scene.scaleMode = SKSceneScaleMode.AspectFill view.presentScene(scene) } } } } 

Pregunte si necesita más explicaciones.