SKSpriteNode .run不起作用或不起作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SKSpriteNode .run不起作用或不起作用相关的知识,希望对你有一定的参考价值。

我试图找到以下skspritenode奇怪行为的来源:有时它只是不执行.run(...)或执行不完整。我找不到任何规律性,所以我想知道,如果这是一个已知的问题?

func didBegin(_ contact: SKPhysicsContact) {

    let firstBody = contact.bodyA
    let secondBody = contact.bodyB

 if firstBody.categoryBitMask == CollisionBitMask.birdCategory && secondBody.categoryBitMask == CollisionBitMask.BonusCategory {
        secondBody.node?.removeFromParent()
        print("contact began")
        firstBody.node?.run(SKAction.run {
            print("run works")
        })
    }
    else if firstBody.categoryBitMask == CollisionBitMask.BonusCategory && secondBody.categoryBitMask == CollisionBitMask.birdCategory {
        firstBody.node?.removeFromParent()
        print("contact began")
        secondBody.node?.run(SKAction.run {
            print("run works")
        })

    }
答案

它仍然不清楚,为什么它会导致问题,但是在我尝试在代码中的某个位置设置其速度后,skspritenode没有执行.run:

enumerateChildNodes(withName: "bird", using: ({
        (node, error) in
        let bg = node as! SKSpriteNode
        bg.physicsBody?.affectedByGravity = false
       bg.speed = 0 // <- after removing this, everything works fine
        }))

以上是关于SKSpriteNode .run不起作用或不起作用的主要内容,如果未能解决你的问题,请参考以下文章

在 SKSpriteNode 中调用自定义方法不起作用

将 skspritenode 位置保存到 plist 不起作用

iOS Spritekit - SKSpriteNode .centerRect 属性不起作用

Swift 3.0:当给定非 SKView 父级时,SKSpriteNode 作为 Button 不起作用?

SKPhysicsBody碰撞不起作用

注册表单不起作用(CSRF 令牌丢失或不正确。) django