2017-10-16 9 views
-1

私は自分自身を素早く教えるためのゲームを作ろうとしており、このコードを動作させることはできないようです。私はこれに非常に新しく、それがうまくいかない理由を見つけられないようです... XCodeは問題を報告せず、sucseedをビルドし、デバッガも「ステージ1になった」というメッセージをステージ2に持ってきます。& ...何も助けて?Swift Sound Effects //なぜコードが機能しないのですか?

私はAVFoundationをインポート...

class GAME { 

    class func SuperStartGame(playerwhowon1: SKSpriteNode) { 

      var player = AVAudioPlayer() 

     func PlaySound() { 
      guard let URL = Bundle.main.url(forResource: "PowerUp", withExtension: "mp3") 
       else { 
        print("Didn't Find URL") 
        return 
      } 

      do { 
       print("Got to Stage 1") 

       try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback) 
       try AVAudioSession.sharedInstance().setActive(true) 

       player = try AVAudioPlayer(contentsOf: URL, fileTypeHint: "mp3") 
       player.prepareToPlay() 
       player.play() 

       print("Got to Stage 2") 
      } catch let error as NSError { 
       print("error: \(error.localizedDescription)") 
      } 

     RoundNumber += 1 
     Round.text = "Round \(RoundNumber)" 

     if playerwhowon1 == Mine { 
      MyScore.run(addscoreM) { 
       PlaySound() 
        Round.run(NewRoundForRound) { 

... 

コードがいっている。..音に関連する部分のみのthats。私はXcodeのにサウンドファイルを追加し、それがあったことを確認しました目標を追加しました...それは私のメインバンドルにあります。

+1

はメソッド/関数や変数名は小文字で始まる命名規則に準拠してください。 'URL'はSwift 3の構造体です。コード構造は非常に混乱しています。 – vadian

答えて

1
  1. あなたのデバイスがミュートされていないことを確認してください
  2. mp3ファイルは enter image description here

  3. 例VC演奏音をバンドルするコピーされます。

    class ViewController: UIViewController { 
        var game = Game() 
    
        @IBAction func playAction(_ sender: UIButton) { 
         game.playSound() 
        } 
    
    } 
    
    class Game { 
    
        var player: AVAudioPlayer? 
    
        func playSound() { 
         guard let URL = Bundle.main.url(forResource: "SampleAudio", withExtension: "mp3") else { 
          print("Didn't Find URL") 
          return 
         } 
    
         do { 
          try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback) 
          try AVAudioSession.sharedInstance().setActive(true) 
    
          player = try AVAudioPlayer(contentsOf: URL, fileTypeHint: "mp3") 
          player?.prepareToPlay() 
          player?.play() 
    
         } catch let error as NSError { 
          print("\(error.localizedDescription)") 
         } 
    
        } 
    
    } 
    
関連する問題