2
내 캐릭터가 땅에 닿을 때 소리를내는 데이 기능을 많이 설정했습니다.캐릭터가 땅바닥에서 튀어 오를 때 소리가 두 번 나옵니까?
func playSound() {
let url = Bundle.main.url(forResource: "Sound", withExtension: "caf")!
do {
Sound = try AVAudioPlayer(contentsOf: url)
guard let Sound = Sound else { return }
Sound.prepareToPlay()
Sound.play()
} catch let error {
print(error.localizedDescription)
}
}
은 1 문제를 제외하고 잘 작동 - 나의 영웅은 땅에 떨어지고 /이 충돌을 만드는 두 번 소리를 재생하는 땅에서 반사된다.
어떻게 수정하겠습니까?
또한 Swift에서 사운드의 볼륨을 조정할 수 있습니까? 아니면 외부에서 수행해야합니까? 어떤 도움을 크게 감사합니다 :)
FUNC를 꺼내,()가 아래라고
if firstBody.categoryBitMask == physicsCategory.bird && secondBody.categoryBitMask == physicsCategory.ground || firstBody.categoryBitMask == physicsCategory.ground && secondBody.categoryBitMask == physicsCategory.bird{
playSound()
enumerateChildNodes(withName: "wallPair", using: ({
(node, error) in
node.speed = 0
self.removeAllActions()
}))
enumerateChildNodes(withName: "birdFly", using: ({
(node, error) in
node.speed = 0
self.removeAllActions()
}))
if died == false{
died = true
createButton()
loseALife()
}
나를 올바른 방향으로 보내 주셔서 감사합니다! 내가 생각하는 볼륨은 업데이트 된 버전의 신속성으로 인해 변경되었습니다. playSound() 함수가 호출 된 직후 flap? .volume = 0.1이 추가되었습니다. 내 코드의 나머지 부분이 내 플레이어가 사망하여 바닥에 떨어진 곳에 추가했습니다. 당신의 도움을 주셔서 감사합니다! – niX