如何停止/取消PlaySoundFileNamed?

时间:2014-05-28 14:30:14

标签: ios sprite-kit skaction

我使用此代码将背景音乐添加到我的游戏关卡

[self runAction:[SKAction playSoundFileNamed:@"dasdas.mp3" waitForCompletion:NO]];

我希望它在Game Over发生时停止。有没有办法取消/停止SKAction,降低音量,什么东西来阻止它?

我知道我想使用这段代码

而不是:

[node runAction:action withKey:@"BackgroundMusicAction"]

然后通过调用SKNode的方法停止它:

- (void)removeActionForKey:(NSString *)key;

使用您用于创建操作的密钥。

但是如何为第一个代码创建一个键,playoundfilenamed以及我在NSString上键入什么或者如何连接它们,我是NOOB,请帮助

2 个答案:

答案 0 :(得分:1)

你在问题​​中有答案。

首先,您需要指定一个键

[self runAction:[SKAction playSoundFileNamed:@"dasdas.mp3"
                           waitForCompletion:NO] 
        withKey: @"BackgroundMusicAction"];

现在,您正在使用键 BackgroundMusicAction

运行操作

要停止此操作,请致电

[self removeActionForKey:@"BackgroundMusicAction"];

答案 1 :(得分:0)

您可以选择放置的任何内容,只要您使用相同的内容进行运行并删除:

SKAction *action = [SKAction playSoundFileNamed:@"dasdas.mp3"
                              waitForCompletion:NO];
[node runAction:action
        withKey:@"MyGameBackgroundMusicAction"];

后来:

[node removeActionForKey:@"MyGameBackgroundMusicAction"];