Почему не воспроизводится звук? - PullRequest
0 голосов
/ 23 февраля 2019
func gameOver() {
    UserDefaults.standard.set(score, forKey: "recentScore")

    if score > UserDefaults.standard.integer(forKey: "highscore") {
        UserDefaults.standard.set(score, forKey: "highscore")
    }

    let menuScene = MenuScene(size: view!.bounds.size)
    view!.presentScene(menuScene)
}

brain.exe перестал работать, почему не воспроизводится звук?Я внедрил звук в проект, но программа не воспроизводит звук, только показывает, что игра окончена, почему это так?

soundWIRDSPIELEN += 1

if soundWIRDSPIELEN == 1 {
    run(SKAction.playSoundFileNamed("lose", waitForCompletion: true))
}

soundWIRDSPIELEN -= 1

if soundWIRDSPIELEN == 0 {
    gameOver()
}

1 Ответ

0 голосов
/ 25 февраля 2019

Вот одна вещь, в которой я уверен, что вы этого не сделали.

Вы указываете компилятору запускать lose sound и ровно через 0,001 секунды после того, как компилятор вызывает сцену gameOver.

Другими словами, компилятор воспроизводит звуки, но пользователь не может их услышать, потому что вы выходите из сцены в gameOver.

Вы должны указать функции gameOver ждать не менее 0,5 секунды.для того, чтобы пользователь услышал звук.Также используйте расширение звукового файла.

run(SKAction.playSoundFileNamed("lose.mp3", waitForCompletion: false))
run(SKAction.sequence([SKAction.wait(forDuration: 1.0), SKAction.run(gameOver)]))
...