You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AM2R-Multitroid-Unofficial-.../Export_Code/gml_Object_oMusicV2_Step_0.gml

195 lines
8.3 KiB

var i, arrDraw, arrRoom, arrRoomPrev, arrSAX;
sameRoomSAX = 0
if audio_is_playing(musFanfare)
exit
if global.spectator
exit
if instance_exists(oClient)
{
if (ds_list_size(oClient.roomListData) > 0)
{
for (i = 0; i < ds_list_size(oClient.roomListData); i++)
{
arrDraw = ds_list_find_value(oClient.roomListData, i)
arrRoom = arrDraw[14]
arrRoomPrev = arrDraw[18]
arrSAX = arrDraw[20]
if (arrSAX && (!global.sax) && room != rm_transition && (arrRoom == room || (arrRoom == global.lastroom && (room == rm_options || room == itemroom || room == subscreenroom || room == maproom || room == rm_subscreen)) || ((arrRoomPrev == room || (arrRoomPrev == global.lastroom && (room == rm_options || room == itemroom || room == subscreenroom || room == maproom || room == rm_subscreen))) && (arrRoom == 6 || arrRoom == 10 || arrRoom == 9 || arrRoom == 11 || arrRoom == 16))))
sameRoomSAX = 1
}
}
}
if (global.showHealthIndicators && global.saxmode)
chasedBySAX = 1
else
chasedBySAX = 0
if ((!global.spectator) && global.saxmode && (!global.sax) && (global.showHealthIndicators || global.enemyNearby || global.escapeTimer > 0 || global.inMusSAXRange || sameRoomSAX || chasedBySAX))
playingSAX = 1
else
playingSAX = 0
if (prevPlayingSAX != playingSAX)
{
if ((!prevPlayingSAX) && playingSAX && runningFromSAX && (!chasedBySAX))
{
if audio_is_playing(oMusicV2.previousbgm)
audio_sound_gain(oMusicV2.previousbgm, 0, fadeoutTimer)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, fadeoutTimer)
if (!audio_is_playing(musSAXEnvironmentalAmbience))
audio_play_sound(musSAXEnvironmentalAmbience, 1, true)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, 0)
audio_sound_gain(musSAXEnvironmentalAmbience, (global.opmusicvolume / 100), fadeoutTimer)
}
if (prevPlayingSAX && (!playingSAX) && (!chasedBySAX))
{
if audio_is_playing(musSAXEnvironmentalAmbience)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, fadeoutTimer)
if (!audio_is_playing(oMusicV2.currentbgm))
audio_play_sound(oMusicV2.currentbgm, 1, true)
if (audio_sound_get_gain(oMusicV2.currentbgm) == 0 || audio_sound_get_gain(oMusicV2.currentbgm) == 0)
{
audio_sound_gain(oMusicV2.currentbgm, 0, 0)
audio_sound_gain(oMusicV2.currentbgm, (global.opmusicvolume / 100), fadeoutTimer)
}
}
prevPlayingSAX = playingSAX
}
if (prevSameRoomSAX != sameRoomSAX)
{
if playingSAX
{
if ((!prevSameRoomSAX) && sameRoomSAX && (!chasedBySAX))
{
if audio_is_playing(oMusicV2.previousbgm)
audio_sound_gain(oMusicV2.previousbgm, 0, 0)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, 0)
if audio_is_playing(musSAXEnvironmentalAmbience)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, fadeoutTimer)
if (!audio_is_playing(musSAXAppear))
audio_play_sound(musSAXAppear, 1, true)
audio_sound_gain(musSAXAppear, 0, 0)
audio_sound_gain(musSAXAppear, (global.opmusicvolume / 100), 0)
mus_stop_all()
}
if (prevSameRoomSAX && (!sameRoomSAX) && (!chasedBySAX))
{
if audio_is_playing(musSAXAppear)
audio_sound_gain(musSAXAppear, 0, fadeoutTimer)
if (!audio_is_playing(musSAXEnvironmentalAmbience))
audio_play_sound(musSAXEnvironmentalAmbience, 1, true)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, 0)
audio_sound_gain(musSAXEnvironmentalAmbience, (global.opmusicvolume / 100), fadeoutTimer)
runningFromSAX = 1
}
}
prevSameRoomSAX = sameRoomSAX
}
if sameRoomSAX
{
if audio_is_playing(oMusicV2.previousbgm)
audio_sound_gain(oMusicV2.previousbgm, 0, 0)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, 0)
}
if (prevChasedBySAX != chasedBySAX)
{
if ((!prevChasedBySAX) && chasedBySAX)
{
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, 0)
if audio_is_playing(musSAXEnvironmentalAmbience)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, 0)
if audio_is_playing(musSAXAppear)
audio_sound_gain(musSAXAppear, 0, 0)
if audio_is_playing(musSAXChase)
audio_stop_sound(musSAXChase)
if (!audio_is_playing(musSAXChase))
audio_play_sound(musSAXChase, 1, true)
audio_sound_gain(musSAXChase, 0, 0)
audio_sound_gain(musSAXChase, (global.opmusicvolume / 100), 0)
}
if (prevChasedBySAX && (!chasedBySAX))
{
audio_sound_gain(musSAXChase, 0, fadeoutTimer)
if playingSAX
{
if sameRoomSAX
{
if audio_is_playing(oMusicV2.previousbgm)
audio_sound_gain(oMusicV2.previousbgm, 0, 0)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, 0)
if audio_is_playing(musSAXEnvironmentalAmbience)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, fadeoutTimer)
if (!audio_is_playing(musSAXAppear))
audio_play_sound(musSAXAppear, 1, true)
audio_sound_gain(musSAXAppear, 0, 0)
audio_sound_gain(musSAXAppear, (global.opmusicvolume / 100), 0)
}
else
{
if audio_is_playing(oMusicV2.previousbgm)
audio_sound_gain(oMusicV2.previousbgm, 0, 0)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, 0)
if audio_is_playing(musSAXAppear)
audio_sound_gain(musSAXAppear, 0, fadeoutTimer)
if (!audio_is_playing(musSAXEnvironmentalAmbience))
audio_play_sound(musSAXEnvironmentalAmbience, 1, true)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, 0)
audio_sound_gain(musSAXEnvironmentalAmbience, (global.opmusicvolume / 100), fadeoutTimer)
}
}
else
{
audio_stop_sound(musSAXEnvironmentalAmbience)
audio_stop_sound(musSAXAppear)
audio_stop_sound(musSAXChase)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, (global.opmusicvolume / 100), fadeoutTimer)
}
}
prevChasedBySAX = chasedBySAX
}
if (global.inMusSAXRangePrev != global.inMusSAXRange)
{
if (global.inMusSAXRangePrev && (!global.inMusSAXRange))
{
if audio_is_playing(musSAXEnvironmentalAmbience)
audio_sound_gain(musSAXEnvironmentalAmbience, 0, fadeoutTimer)
if audio_is_playing(musSAXAppear)
audio_sound_gain(musSAXAppear, 0, fadeoutTimer)
stopSAXMusTimer = 120
if runningFromSAX
runningFromSAX = 0
}
global.inMusSAXRangePrev = global.inMusSAXRange
}
if (((audio_is_playing(musSAXEnvironmentalAmbience) && audio_sound_get_gain(musSAXEnvironmentalAmbience) > 0) || (audio_is_playing(musSAXAppear) && audio_sound_get_gain(musSAXAppear) > 0) || audio_is_playing(musSAXChase)) && playingSAX)
{
if audio_is_playing(oMusicV2.previousbgm)
audio_sound_gain(oMusicV2.previousbgm, 0, fadeoutTimer)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, 0, fadeoutTimer)
}
if (stopSAXMusTimer > 0)
{
if (stopSAXMusTimer == 1)
{
if audio_is_playing(musSAXEnvironmentalAmbience)
audio_stop_sound(musSAXEnvironmentalAmbience)
if audio_is_playing(musSAXAppear)
audio_stop_sound(musSAXAppear)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, (global.opmusicvolume / 100), fadeoutTimer)
}
stopSAXMusTimer--
}
if (audio_is_playing(musSAXChase) && audio_sound_get_gain(musSAXChase) == 0)
{
audio_stop_sound(musSAXChase)
if audio_is_playing(oMusicV2.currentbgm)
audio_sound_gain(oMusicV2.currentbgm, (global.opmusicvolume / 100), fadeoutTimer)
}