前提・実現したいこと
RPG風のゲームを作っています.
無限ループでBGMを流そうとしているのですが.エラー文が出て先に進みません.
発生している問題・エラーメッセージ
Value of type 'String' has no member 'componentsSeparatedByString'
該当のソースコード
swift
1 class Sound{ 2 3 //playerを作成 4 var player: AVAudioPlayer! 5 6 init(fileNamed:String,volume:Float,numberOfLoops:Int){ 7 let fileNameStrings = fileNamed.componentsSeparatedByString(".") ///!!ここでエラー!! 8 let fileName = fileNameStrings[0] 9 let fileType = fileNameStrings[1] 10 let url = Bundle.mainBundle().URLForResource(fileName, withExtension: fileType) 11 if let url = url { 12 do { 13 player = try AVAudioPlayer(contentsOfURL: url) 14 player.numberOfLoops = numberOfLoops/* 0なら一回、自然数ならその数だけループ、負の数なら永久ループ */ 15 player.prepareToPlay() //再生準備 (タイミングがシビアな時のみ) 16 player.volume = volume 17 } catch { 18 //プレイヤー作成失敗 19 fatalError("Failed to initialize a player.") 20 } 21 22 } else { 23 //エラーを表示させる 24 fatalError("Error loading sound resource: " + fileNamed) 25 } 26 27 } 28 29 convenience init(fileNamed:String){ 30 self.init(fileNamed:fileNamed,volume:1.0,numberOfLoops:0) 31 } 32 33 //AVAudioPlayerのメソッドを流用。これで〇〇.player.play()でなく〇〇.play()で済む 34 func play(){ 35 self.player.play() 36 } 37 38 func pause(){ 39 self.player.pause() 40 } 41 42 func stop(){ 43 self.player.stop() 44 } 45 46 } 47let bgm = Sound(fileNamed: "bgm.wav",volume:0.5,numberOfLoops:-1) 48/*bgm.wavを0.5のvolumeで永久ループで再生できる*/ 49 50↓マップ表示等
どなたか教えていただけると助かります....
補足情報(FW/ツールのバージョンなど)
Xcode Version 11.1で制作しています
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。