如何将swift文件与SKscene连接?

Fer*_*sch 3 ios sprite-kit swift

我查看了所有帖子,WWDC会谈和youtube视频,但我仍然无法弄清楚如何在不同级别使用多个SKscenes并使用Spritekit将它们与游戏中的swift文件连接起来.我想拥有一个主级别板,如果按下SKSpriteNode,我设法打开一个新场景,但是如何为这个特定的SKScene实现游戏逻辑?如果这是一个愚蠢的问题,请提前道歉,我已经花了很多年的时间.

Whi*_*ind 6

你可以这样做:

1)创建.swift文件并创建一个子类SKScene

去 :

文件菜单 - >新建文件 - >源 - > Swift文件

并创建SKScene的子类

class MenuScene:SKScene {}
Run Code Online (Sandbox Code Playgroud)

2)创建.sks文件

然后去

文件菜单 - >新文件 - >资源 - > SpriteKit场景

并制作一个MenuScene.sks(MenuScene没有实际扩展名称).

对要使用的每个场景重复此步骤.

然后加载并启动您的初始场景.在你的内心这样做GameViewController.swift:

if let scene = GameScene(fileNamed:"GameScene") {
      let skView = self.view as! SKView
      //setup your scene here
      skView.presentScene(scene)
}
Run Code Online (Sandbox Code Playgroud)

要转换到其他场景(假设您在MenuScene当前),您应该执行以下操作:

if let nextScene = GameScene(fileNamed: "GameScene"){
  nextScene.scaleMode = self.scaleMode                 
  let transition = SKTransition.fadeWithDuration(1)                  
  view?.presentScene(nextScene, transition: transition)
}
Run Code Online (Sandbox Code Playgroud)