2015-02-24 74 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