Ошибка Spritekit SKAudionode: AddInstanceForFactory: завод не зарегистрирован для идентификатора F8BB1C28-BAE8-11D6-9C31-00039315CD46 - PullRequest
0 голосов
/ 19 июня 2020

Я встречал эту ошибку повсюду в Stack Overflow, но не могу найти решение, которое подойдет мне. У меня есть одна строка кода, запускающая аудиофайл. Он находится во вражеском классе, и я продолжаю получать эту ошибку. Я знаю, что могу отключить сообщение об ошибке на консоли, но это также тормозит игру на моем устройстве. Кто-то может предложить какую-либо работу. Проблема возникает только при здоровье == 75, возникает один раз и больше не повторяется. но это происходит каждый раз, когда я перезапускаю приложение. Вот мой код:

 override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        health = health - 25
        score = score + 15
        if health == 100 {
            self.texture = imageTexture1
            self.run(scale1)
        }
        if health == 75{
            self.texture = imageTexture2
            self.run(scale1)
            run(SKAction.playSoundFileNamed("boom.wav", waitForCompletion: true))
            //self.soundEffect()
        }
        if health == 50{
            self.texture = imageTexture3
            self.run(scale1)
            run(SKAction.playSoundFileNamed("boom.wav", waitForCompletion: true))
            //self.soundEffect()
        }
        if health == 25{
            run(SKAction.playSoundFileNamed("explosion.wav", waitForCompletion: false))
            self.physicsBody = nil
            run(SKAction.sequence([SKAction.wait(forDuration: 0.25), SKAction.run{self.removeFromParent()}]))
            score = score + 35
        }
...