// ----------------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------------
/* 27.03.2014
----------------------------------------------------------------------------------------------
music - system (ms) example script rayp 2014 free2use forum:www.coniserver.net/ubb7
----------------------------------------------------------------------------------------------
You can simply add more songs. CopyNPaste MS_SongX and the "if (_ms_song_newsong == X... -
line" and count up :D see example MS_Song3
Note: switching songs ingame : _ms_song_newsong = Number of newsong 0 for none ... thats it !
call "_init_music_system();" once, and have fun !
set _mm_music_on to 1 be4 calling !
example needs: song1.mp3 and song2.mp3 placed in your main game directory ( main.c )
*/
// ----------------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------------
STRING* MS_Song1 = "song1.mp3"; // place mp3's in project's main folder
STRING* MS_Song2 = "song2.mp3";
//STRING* MS_Song3 = "song3.mp3"; // and so on ...
// ----------------------------------------------------------------------------------------------
var _mm_music_on = 1; // 0 = stop music
var _ms_song_newsong = 1; // change this value to load new song nr X
var _ms_song_playing = 0; // song which is playing right now
var _ms_song_handle = 0; // handle to now playing song
var _ms_master_volume = 80; // master volume 4 song play
// ----------------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------------
void _init_music_system(){ // global running music box function
proc_mode = PROC_GLOBAL;
var _fade_to_sound = 0;
var _volume = 0;
_ms_song_handle = media_loop (MS_Song1, NULL, 0);
while (1){
if (!_mm_music_on) { media_stop (_ms_song_handle); break; return; } // stop all
if (_volume != _ms_master_volume) media_tune (_ms_song_handle, _ms_master_volume, NULL, 0);//changed vol?
if (_ms_song_playing != _ms_song_newsong && !_fade_to_sound){
_fade_to_sound = 1;
_ms_song_playing = _ms_song_newsong;
while (_volume > 0){
_volume -= time_step * 2;
media_tune (_ms_song_handle, _volume, NULL, 0);
wait (1);
}
media_stop (_ms_song_handle);
if (_ms_song_newsong == 1) _ms_song_handle = media_loop (MS_Song1, NULL, 0);
if (_ms_song_newsong == 2) _ms_song_handle = media_loop (MS_Song2, NULL, 0);
//if (_ms_song_newsong == 3) _ms_song_handle = media_loop (MS_Song3, NULL, 0);
while (_volume < _ms_master_volume){
_volume += time_step * 2;
media_tune (_ms_song_handle, _volume, NULL, 0);
wait (1);
}
_fade_to_sound = 0;
}
wait (1);
}
}
// ----------------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------------
// end of this great contribution ... ifuwant give credits 2 rayp ... building a deathstar withit
// ----------------------------------------------------------------------------------------------
// ----------------------------------------------------------------------------------------------