Спрайты XCode не добавляются, несмотря на то, что все установлено и сделано, включая addChild (). Просто базовый c код - PullRequest
0 голосов
/ 18 апреля 2020

Я пытался протестировать что-то, кроме c, но мне это нужно, я записал это, но мои спрайтовые узлы не представлены в сцене. Это может быть глупой ошибкой, но я не смог ее найти. Что мне делать?

var test = SKSpriteNode()
var test2 = SKSpriteNode()

override func didMove(to view: SKView) {
    spawnAll()
}

func spawnAll() {
    test = SKSpriteNode(color: UIColor.green, size: CGSize(width: 75, height: 75))
    test.position = CGPoint(x: -100, y: 100)
    test.anchorPoint = CGPoint(x: 0.5, y: 0.5)
    test.physicsBody = SKPhysicsBody(rectangleOf: test.size)
    physicsWorld.gravity = CGVector(dx: -1, dy: 0)
    self.physicsBody = SKPhysicsBody(edgeLoopFrom: frame)
    test.physicsBody?.allowsRotation = false
    test.physicsBody?.restitution = 0.7
    test.isHidden = false

    addChild(test)

    test2 = SKSpriteNode(color: UIColor.magenta, size: CGSize(width: 75, height: 75))
    test2.position = CGPoint(x: self.size.width / 2, y: self.size.height / 2)
    test2.physicsBody = SKPhysicsBody(rectangleOf: test2.size)
    test2.isHidden = false
    addChild(test2)
}

override func update(_ currentTime: TimeInterval) {
    var radians = atan2(test.position.x, test.position.y)
    test2.zRotation = -radians
}

1 Ответ

0 голосов
/ 19 апреля 2020

Насколько я могу судить, вы не вызывали функцию до удовольствия переопределения c, поэтому она не знает, что она должна делать. Я запустил его, и он заработал, когда я поместил функцию spawnAll () перед функцией переопределения

...