大佬教程收集整理的这篇文章主要介绍了Swift音频播放速度,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
override func touchesBegan(_ touches: Set<UITouch>,with event: UIEvent?) { for touch in touches { let LOCATIOn = touch.LOCATIOn(in: self) //Start spinning the wheel if atPoint(LOCATIOn).name == "play_button" { player?.physicsBody?.angularVeLocity = 0 player?.rotatePlayer() //Click BACk button } else if atPoint(LOCATIOn).name == "BACk_button" { let play_scene = CharacterSELEctScene(filenamed: "CharacterSELEct") play_scene?.scaleMode = .aspectFill self.view?.presentScene(play_scene!,transition: SKTransition.doorsOpenVertical(withDuration: 1)) } else if atPoint(LOCATIOn).name == "setTings_button" { let play_scene = SetTingsScene(filenamed: "SetTingsScene") play_scene?.scaleMode = .aspectFill self.view?.presentScene(play_scene!,transition: SKTransition.doorsOpenVertical(withDuration: 1)) } } } override func didSimulatePhysics() { let speed = player?.physicsBody?.angularVeLocity if (speed != CGFloat(0.0)) { if (speed! <= CGFloat(0.1)){ finishedRotation = true } } } override func didFinishupdate() { if (finishedRotation == truE) { let play_scene = QuestionScene(filenamed: "QuestionScene") play_scene?.scaleMode = .aspectFill self.view?.presentScene(play_scene!,transition: SKTransition.doorsOpenVertical(withDuration: 1)) } } func didBegin(_ contact: SKPhysicsContact) { let defaults = UserDefaults.standard var firstBody = SKPhysicsBody() var secondBody = SKPhysicsBody() if (contact.bodyA.node?.name == "pin") { firstBody = contact.bodyA secondBody = contact.bodyB } else { firstBody = contact.bodyB secondBody = contact.bodyA } if (firstBody.node?.name == "pin" && secondBody.node?.name == "geography") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") } else if (firstBody.node?.name == "pin" && secondBody.node?.name == "maths") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") } else if (firstBody.node?.name == "pin" && secondBody.node?.name == "history") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") } else if (firstBody.node?.name == "pin" && secondBody.node?.name == "science") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") } }
Player类中的rotatePlayer方法定义如下:
func rotatePlayer() { let random = GKRandomDiStribution(loWestValue: 20,highestValue: 120) let r = random.nexTint() self.physicsBody?.angularVeLocity = 0 self.physicsBody?.angularVeLocity = CGFloat(r) self.physicsBody?.angularDamping = 1.02 }
func playSound() { let url = Bundle.main.url(forresource: "clicker",withExtension: "m4a")! do { SoundEffect = try AVAudioPlayer(contentsOf: url) guard let players = SoundEffect else { return } players.prepareToPlay() players.play() } catch let error as NSError { print(error.description) } } func didEnd(_ contact: SKPhysicsContact) { let defaults = UserDefaults.standard var firstBody = SKPhysicsBody() var secondBody = SKPhysicsBody() if (contact.bodyA.node?.name == "pin") { firstBody = contact.bodyA secondBody = contact.bodyB } else { firstBody = contact.bodyB secondBody = contact.bodyA } if (firstBody.node?.name == "pin" && secondBody.node?.name == "geography") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") playSound() } else if (firstBody.node?.name == "pin" && secondBody.node?.name == "maths") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") playSound() } else if (firstBody.node?.name == "pin" && secondBody.node?.name == "history") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") playSound() } else if (firstBody.node?.name == "pin" && secondBody.node?.name == "science") { let set_topic = secondBody.node?.name defaults.set(set_topic,forKey: "Topic") playSound() } }
以上是大佬教程为你收集整理的Swift音频播放速度全部内容,希望文章能够帮你解决Swift音频播放速度所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。