Game Maker:Studio Sound在搬到隔壁房间时不会播放?

时间:2015-06-16 18:36:58

标签: android game-maker

我正在Game Maker Studio制作一款小游戏。 我有一段代码可以在玩家接触到obj_star时将玩家移动到下一个房间:这样可行。 我有另一条线试图在触摸星星时播放sound_collect,但游戏只是移动到下一个房间而没有播放声音。 我的代码如下:

//Get the player's input
key_right = keyboard_check(vk_right);
key_left = -keyboard_check(vk_left);
key_jump = keyboard_check_pressed(vk_space);

//React to inputs
move = key_left + key_right;
hsp = move * movespeed;
if (vsp < 10) vsp += grav;

if (place_meeting(x,y+1,obj_wall))
{
vsp = key_jump * -jumpspeed
}
//Horizontal Collision
if (place_meeting(x+hsp,y,obj_wall))
{
while(!place_meeting(x+sign(hsp),y,obj_wall))
{
    x += sign(hsp);
}
hsp = 0;
}
x += hsp;

//Vertical Collision
if (place_meeting(x,y+vsp,obj_wall))
{
while(!place_meeting(x,y+sign(vsp),obj_wall))
{
    y += sign(vsp);
}
vsp = 0;
}
y += vsp;

//Sounds
if (place_meeting(x+hsp,y,obj_star))
{
sound_play(sound_collect)
};

2 个答案:

答案 0 :(得分:0)

首先,您需要使用新的音频引擎和功能audio_...。所有功能sound_...都是遗留的,不适用于新的音频引擎。

enter image description here

第二,我不确定

if (place_meeting(x+hsp,y,obj_star))
{
    // play
}

是正确的方法。例如,如果您在触摸后销毁obj_star,则可以在Destroy的{​​{1}}事件中播放声音。

答案 1 :(得分:0)

我可以为游戏添加主菜单。当玩家点击菜单选项时,播放所需的音乐。然后,当加载需要不同音乐的新房间时,您可以使用audio_stop_all();,然后使用audio_play_sound("sound_Song, 10, false);播放您想要的任何声音 希望这有帮助!