为什么我的自定义 Swift class 没有转移到我的 GameScene
Why is my custom Swift class not transferring to my GameScene
我希望能够在我的游戏场景中访问我的自定义 class。我遵循了以下指示:http://spritekitlessons.com/how-to-write-your-own-custom-classes-in-sprite-kit/
首先,我创建了一个名为 Player.swift 的新文件,我确保将其定位到我的项目文件夹中
然后我添加这个自定义 class
import Foundation
import SpriteKit
class Player: SKSpriteNode {
let walkingActive = 0
}
但是当我尝试在我的 gameScene 中访问它时
class GameScene: SKScene, SKPhysicsContactDelegate {
var thePlayer: Player = Player()
}
我收到错误:使用未声明的类型 'Player'
如果我尝试使用无法像这样识别的类型实例化 class
if let somePlayer:Player = self.childNode(withName: "Player") as? Player {
//make the declared variable equal to somePlayer
thePlayer = somePlayer
}
我收到错误:
条件绑定的初始化器必须有可选类型,而不是'<>'
使用未声明的类型'Player'
我完全按照指南进行操作,并且找到了另一个资源,它告诉我做完全相同的事情。所以我不明白我做错了什么。
非常感谢您的帮助!谢谢
为了清楚起见,这里是我正在做的事情的图片
这看起来像是目标成员资格问题。
我建议查看 Player.swift 的目标成员资格并确保项目名称旁边的复选标记存在。
如何验证目标成员资格
- 点击文件
- 打开实用程序窗格(Xcode 上的右侧窗格)(选项 + 命令 + 0)
- 导航到实用程序窗格中的文件检查器(文件图标)
- 应该列出目标成员和文件路径
我希望能够在我的游戏场景中访问我的自定义 class。我遵循了以下指示:http://spritekitlessons.com/how-to-write-your-own-custom-classes-in-sprite-kit/
首先,我创建了一个名为 Player.swift 的新文件,我确保将其定位到我的项目文件夹中
然后我添加这个自定义 class
import Foundation
import SpriteKit
class Player: SKSpriteNode {
let walkingActive = 0
}
但是当我尝试在我的 gameScene 中访问它时
class GameScene: SKScene, SKPhysicsContactDelegate {
var thePlayer: Player = Player()
}
我收到错误:使用未声明的类型 'Player'
如果我尝试使用无法像这样识别的类型实例化 class
if let somePlayer:Player = self.childNode(withName: "Player") as? Player {
//make the declared variable equal to somePlayer
thePlayer = somePlayer
}
我收到错误:
条件绑定的初始化器必须有可选类型,而不是'<>'
使用未声明的类型'Player'
我完全按照指南进行操作,并且找到了另一个资源,它告诉我做完全相同的事情。所以我不明白我做错了什么。
非常感谢您的帮助!谢谢
为了清楚起见,这里是我正在做的事情的图片
这看起来像是目标成员资格问题。
我建议查看 Player.swift 的目标成员资格并确保项目名称旁边的复选标记存在。
如何验证目标成员资格
- 点击文件
- 打开实用程序窗格(Xcode 上的右侧窗格)(选项 + 命令 + 0)
- 导航到实用程序窗格中的文件检查器(文件图标)
- 应该列出目标成员和文件路径