2015-02-24 107 views
0

我有一類播放聲音文件的方法玩SKAction聲音:如何從另一個類

import SpriteKit 
import AVFoundation 

class Sound: SKScene { 

    func play(fileName:String){ 

      var sound = SKAction.playSoundFileNamed(fileName, waitForCompletion: false) 
      runAction(sound) 
    } 
} 

當我打電話從像這樣另一類這個方法,不播放聲音(雖然包括println告訴我該函數正在執行)。

var sound = Sound() 
sound.play("tick.mp3") 

我無法通過另一個班級播放聲音文件嗎?有人可以解釋爲什麼這是?謝謝

回答

2

你正在使你的聲音類作爲skscene的子類嗎?你爲什麼這樣做?你的聲音在該場景類的一個實例中播放。

我不知道爲什麼你不從你的主場景播放聲音直接..這會更有意義

如果你真的需要這種聲音類的我想你可以繼承sknode並添加節點到你的主場景..

+0

我認爲使用這樣的類可以讓我創建一個變量'var sound = Sound()',然後簡單地調用'sound.play(「Sound_file.mp3」)''。這會阻止我在每個場景中創建播放聲音功能。我想不是,我會堅持玩我主場面的聲音。感謝您爲我清理 – 2015-02-25 15:11:22