当你进入指定的房间时,让音频停止播放有些麻烦。我尝试了几种不同的方法,包括使用if语句和audio_play_sound / audio_stop_sound以及audio_play_music / audio_stop_music完全编码,但这两种方式都不起作用,只是将音乐一遍又一遍地分层,直到它产生一堆声音。
目前,我已经尝试过这种方式,但进入房间后,音乐一直在播放,不会停止。
任何人都知道如何让这个工作?我正在使用Gamemaker的最新版本。
干杯
您的问题是audio_stop_sound()方法接受声音的实例,而不是声音对象的名称。
我这样做没有Game Maker Studio验证代码,但最好的方法是保存启动声音时返回的索引,并在稍后使用该索引来停止它。
例如,开始你的声音(称为MainMenuTheme):
global.MENU_SOUND = audio_play_sound(MainMenuTheme, 1, 1);
然后停止它
if (audio_is_playing(global.MENU_SOUND))
{
audio_stop_sound(global.MENU_SOUND);
}
基本上,当您启动循环声音时,将其索引存储在全局变量中,以便您可以在需要时从其他屏幕或对象停止它。