Я пытаюсь создать SKSpriteNode из класса (Planets) в моей GameScene при нажатии кнопки.Моя проблема в том, что граница не появляется на экране.
class Planets: SKSpriteNode, EventListenerNode, InteractiveNode {
var gameScene: GameScene!
func didMoveToScene(){
isUserInteractionEnabled = true
gameScene = (SKScene(fileNamed: "GameScene") as! GameScene)
}
func interact() {
print("hi \(self.name ?? "Planet X")")
let border = SKSpriteNode(color: SKColor.gray, size: CGSize(width: 200, height: 200))
border.name = "border"
border.zPosition = 100
border.position = CGPoint(x: gameScene.frame.size.width/2, y: gameScene.frame.size.height/2)
gameScene.addChild(border)
}
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
super.touchesEnded(touches, with: event)
interact()
}
}
Однако, если я использую self.addChild, (это означает, что это класс Planets), он работает, поэтому он работает, если я добавляю границу к узлу SKSpriteNode, но я не хочу этого, потому что размер отличается, позиция также отличается.Я просто хочу добавить его в мою GameScene.Заранее спасибо!