jjzjj

SKReferenceNode

全部标签

swift - 将 SKReferenceNode/SKScene 添加到 SpriteKit 中的另一个 SKScene

我想在我的主要GameScene中添加一个SKScene。SKReferenceNode似乎是一个很好的解决方案。我有:-GameScene.sks(主场景)-Countdown.sks(添加到GameScene的场景)-Countdown.swift(自定义类,如何初始化它?SKScene?SKReferenceNode?SKNode)我不知道如何使用我的倒计时类以编程方式添加我的倒计时。我试过:letpath=Bundle.main.path(forResource:"Countdown",ofType:"sks")letcd=SKReferenceNode(url:NSURL(f

swift - 以编程方式添加 SKReferenceNode

我有很长的2d关卡,所以我将它分成更多的.sks文件。我有“GameScene”,我可以通过拖放将它们加入到场景编辑器中。它创建SKReferenceNodes。我已经成功地做到了。但是我想在代码中需要时延迟加载这些部分(据说这是一种很好的做法)。我在这方面失败了。这是代码的特殊部分:ifletnextPart=SKReferenceNode(fileNamed:"Scene2_city2"){ifself.childNodeWithName("Scene2_city2")==nil{self.addChild(nextPart)}}"Scene2_city2"是.sks文件的名称,也

ios - iOS 11 中的 SKReferenceNode 问题

我发现了一个从iOS11开始的奇怪问题,我的应用程序不会更新我的SKReferenceNode上的Sprite。基本上,我有一个具有页眉和页脚的“覆盖”节点(我用于多个场景的SKS文件)。在标题中,有一个计分栏,当玩家得分时该计分栏会展开。我正在使用SKAction为得分栏制作动画。从iOS11开始,分数栏不再出现。它发生在模拟器和设备上。有趣的是,如果我通过调试器暂停/恢复应用程序,得分栏会立即出现。我能够将问题简化为以下代码。importSpriteKitvaroverlayNode:SKNode?varheader=SKSpriteNode()varscoreBar:SKSpri

swift - 在 SpriteKit SWIFT 中获取 SKReferenceNode 的子节点

我创建了一个场景Case.sks(使用关卡编辑器),在一个SKSpriteNode(名称:方形)和一个SKLabel(名称:标签)中。在我的主场景GameScene.sks中,我使用带有“Case”的SKReferenceNode作为引用。我需要从我的主场景访问“方形”Sprite。我的第一个想法是直接调用子节点:letfirstSquare=childNode(withName:"square")as!SKSpriteNode但是我得到了:Fatalerror:unexpectedlyfoundnilwhileunwrappinganOptionalvalue所以我尝试了:letca