【问题标题】:How can you connect a swift file with an SKscene?如何将 swift 文件与 SKscene 连接?
【发布时间】:2016-03-14 21:28:30
【问题描述】:

我浏览了所有帖子、WWDC 演讲和 youtube 视频,但我仍然无法弄清楚如何使用 Spritekit 在游戏中为不同级别创建多个 SKscenes 并连接它们与 swift 文件。我想要一个主关卡,如果你按下一个 SKSpriteNode,我设法打开了一个新场景,但是我怎样才能为这个特定的 SKScene 实现游戏逻辑呢? 如果这是一个愚蠢的问题,请提前道歉,我已经花费了很长时间。

【问题讨论】:

  • 你想从你目前所在的地方推出一个新的 SKScene 吗?

标签: ios swift sprite-kit


【解决方案1】:

你可以这样做:

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

转到:

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

并创建一个 SKScene 的子类

class MenuScene:SKScene {}

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)
}

要过渡到其他场景(假设您目前在MenuScene 中),您应该执行以下操作:

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

【讨论】:

  • 另外,在这里阅读更多关于在 SpriteKit 项目中拥有多个场景的信息。 stackoverflow.com/a/35409586/3402095
  • 您的帖子很有帮助,我现在可以正常使用了,我还阅读了其他帖子,您链接的内容也很有帮助,非常感谢您的好回答!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-06
  • 2014-08-24
  • 1970-01-01
  • 2016-04-07
  • 2017-12-13
  • 1970-01-01
相关资源
最近更新 更多