Swift 创建单独类的精灵工具包
尝试设计一个使用精灵工具包的游戏时,我发现为我的游戏对象之一创建一个单独的类会更容易,那就是船上的激光。在这个类中,我可能会有一些函数,比如更新、射击等。但是每当我创建另一个类时,我所创建的变量都不会被“声明”。这是我的密码Swift 创建单独类的精灵工具包,swift,sprite-kit,Swift,Sprite Kit,尝试设计一个使用精灵工具包的游戏时,我发现为我的游戏对象之一创建一个单独的类会更容易,那就是船上的激光。在这个类中,我可能会有一些函数,比如更新、射击等。但是每当我创建另一个类时,我所创建的变量都不会被“声明”。这是我的密码 import UIKit import SpriteKit class laser: SKSpriteNode { let laser : SKSpriteNode = SKSpriteNode(imageNamed:"playerShip") laser.positi
import UIKit
import SpriteKit
class laser: SKSpriteNode {
let laser : SKSpriteNode = SKSpriteNode(imageNamed:"playerShip")
laser.position = CGPoint(x: 100, y: 200)//This is where it says no declaration
}
这是因为您需要启动该类 在您的示例中,您需要执行以下操作,这将允许您实例化一个类似于以下内容的激光器
laser()
但你可能真的很想要这个,它允许你像这样实例化一个激光器let aLaser=laser(“playerShip”)
。然后您可以像这样更改位置alaser.position=CGPoint(x:100,y:200)
此方法允许您轻松更改不同激光器的精灵和位置。除非你的游戏只有一个激光
class laser: SKSpriteNode {
init(_ imageName: String) {
let texture: SKTexture = SKTexture(imageNamed: imageName)
super.init(texture: texture, color: .clear, size: texture.size())
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
这是因为您需要初始化该类 在您的示例中,您需要执行以下操作,这将允许您实例化一个类似于以下内容的激光器
laser()
但你可能真的很想要这个,它允许你像这样实例化一个激光器let aLaser=laser(“playerShip”)
。然后您可以像这样更改位置alaser.position=CGPoint(x:100,y:200)
此方法允许您轻松更改不同激光器的精灵和位置。除非你的游戏只有一个激光
class laser: SKSpriteNode {
init(_ imageName: String) {
let texture: SKTexture = SKTexture(imageNamed: imageName)
super.init(texture: texture, color: .clear, size: texture.size())
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}