Swift 4 SKSpriteNode 转换为 CustomClass
Swift 4 SKSpriteNode cast to CustomClass
您好,我想做的是以编程方式创建一个 spriteNode 并为其分配 class。这样我就可以轻松管理节点特性,例如自定义级别、枪支、hp 等...
这是我正在尝试的方法。
let player = SKSpriteNode(imageNamed: "charcter") as? Dummyplayer
player.physicsBody?.affectedByGravity = false
player.physicsBody?.allowsRotation = false
player.size.height = 75
player.size.width = 75
addChild(player)
player.position.x = CGFloat(x)
player.position.y = CGFloat(y)
但它没有说它不能将类型 SKSpriteNode 转换为类型 game.Dummplayer,class Dummyplayer 是 SKSpriteNode 类型,所以我不确定我做错了什么。
您正在创建 SKSpriteNode
,然后将其转换为 DummyPlayer
。演员表总是会失败,因为玩家 NOT a DummyPlayer
.
解决方案
假设 Dummyplayer class 定义如下
class Dummyplayer: SKSpriteNode { }
您需要创建一个 Dummyplayer
类型的值
if let player = Dummyplayer(imageNamed: "character") {
....
}
您好,我想做的是以编程方式创建一个 spriteNode 并为其分配 class。这样我就可以轻松管理节点特性,例如自定义级别、枪支、hp 等... 这是我正在尝试的方法。
let player = SKSpriteNode(imageNamed: "charcter") as? Dummyplayer
player.physicsBody?.affectedByGravity = false
player.physicsBody?.allowsRotation = false
player.size.height = 75
player.size.width = 75
addChild(player)
player.position.x = CGFloat(x)
player.position.y = CGFloat(y)
但它没有说它不能将类型 SKSpriteNode 转换为类型 game.Dummplayer,class Dummyplayer 是 SKSpriteNode 类型,所以我不确定我做错了什么。
您正在创建 SKSpriteNode
,然后将其转换为 DummyPlayer
。演员表总是会失败,因为玩家 NOT a DummyPlayer
.
解决方案
假设 Dummyplayer class 定义如下
class Dummyplayer: SKSpriteNode { }
您需要创建一个 Dummyplayer
if let player = Dummyplayer(imageNamed: "character") {
....
}