我创建了一个名为Robber的类,它扩展了SKNode,并在游戏中添加了该类的实例。 但是当我想在实例上调用自定义函数时,它说“类型'SKNode'的值没有成员'旋转'”
为什么不起作用?
我的GameScene课程:
enter code here
func addRobber(){
lastRobber = false
robber = Robber(x: Int(frame.width),y: Int(frame.height),h:Int(frame.height),so:sOp)
self.addChild(robber as Robber)
}
override func didMove(to view: SKView) {
addRobber()
}
[...]
override func update(_ currentTime: TimeInterval) {
[...]
for sprite in self.children{
if( sprite is Dots_Destroy.Robber) {
sprite.rotate() //Value of type 'SKNode' has no member 'rotate'
}
}
}
我的强盗班
import SpriteKit
import GameplayKit
import Foundation
class Robber:SKNode{
let sprite = SKSpriteNode(imageNamed: "wrog.png")
let sprite2 = SKSpriteNode(imageNamed: "dzialowrog.png")
let spriteNode = SKNode()
let g = true
var life = 2
init(x:Int,y:Int,h:Int,so:SimpleOpponent){
super.init()
[...]
self.physicsBody?.affectedByGravity = false
self.name = "rob"
self.addChild(sprite)
self.addChild(sprite2)
self.position = so.sprite.position
self.physicsBody?.categoryBitMask = 0x1 << 103
self.physicsBody?.collisionBitMask = 0x1 << 104
self.physicsBody?.contactTestBitMask = 0x1 << 1
}
func rotate(){
self.run(SKAction.rotate(byAngle: 3.15, duration: 0.3))
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
答案 0 :(得分:0)
是否有建议通过Xcode解决问题?试试吧,看看。 Xcode实际上非常有用,并且可以解决问题。
单击错误行上显示的红色警报“i”图标,尝试Xcode的任何建议,或者如果可能,只需单击修复。