我正在开发一个 spritekit 游戏并已完成第一关。对于关卡 1,我使用 .sks 文件布置场景并将其链接到 GameScene.swift 文件以用于逻辑。
当我制作下一个关卡时,很可能称为“GameScene2.swift” 有没有一种方法可以将已完成的 Gamescene.swift 文件作为下一个关卡的基础,然后根据需要覆盖? didMoveto 和 didBegin 之类的东西在各个级别之间基本相同。
我一直在谷歌上搜索这个概念,但没能找到太多关于它的信息,我不太确定实际上如何称呼这个概念,这可能就是为什么我找不到太多关于它的原因。任何见解将不胜感激。
最佳答案
是的,您可以子类化您的原始游戏场景,并从您创建的其他游戏场景继承其所有功能。
因此您将创建一个继承自 SKScene 的原始游戏场景,如下所示:
class OriginalGameScene: SKScene {
// all of your shared logic here (didMoveTo and didBegin) functions
}
对于项目中的所有游戏场景,只需继承原始游戏场景,如下所示:
class FirstGameScene: OriginalGameScene {
// this class has the logic from the functions didMoveTo and didBegin
}
仅将您希望在所有其他游戏场景中共享的逻辑放在您的 OriginalGameScene
中,您将能够访问您在该 OriginalGameScene
中实现的任何功能或逻辑文件。
关于ios - 我如何引用 GameScene.swift 文件作为其余游戏关卡的基础?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45869816/