As requested by HeyItsDuke, This is some custom event groups for setting up music in your single player map, to play Serious Sam style. Meaning when you are wandering without enemies you have peaceful music then as soon as the fight starts it goes to heavy music. Then once all the enemies are dead it goes back to peaceful music. This also has group files if you want just the fight music and no peaceful music. Also included is a test map with 3 hoard filled areas to demonstrate the events complete with music from Serious Sam.
The setup for just the fight music is:
Goal_Create(Named Fight) Then a trigger(to start the music)--->Cyclic_Timer(length of track, send forever)--->Goal_Check(Fight)--->Music_Start Then a When_Dead(linked to all enemies in the area)--->Music_Stop(1 sec fade)--->Invert--->Goal_Set(Fight)
So what is happening is a goal is created with a value of 0, the Cyclic_Timer checks this goal and if it still 0 it loops the music. Once everyone is dead the music is stopped and the goal is changed to -1 to stop the Cyclic_Timer from looping it again.
In the next room, everything is just copied and pasted minus the Goal_Create event and -1 is added to the "minimum count" of the Goal_Check event.
You can also add a Music_Stop after the Music_Start with the delay time set to the length of the track and a little fade time to smooth the cut between loops. However if the music is stopped from all the enemies being killed, but then the next music you want to play is going to start up in less time than the length of the previous track, then you can't use this Music_Stop because it will stop the new track, due to the delay in the Music_Stop event still counting down from the last time the Cyclic_Timer started the loop.
The setup for the Fight+Peace music is:
Same as above with the addition of Goal_Create(Named Peace) Then a Trigger_Auto--->Cyclic_Timer(length of peace track, send forever)--->Goal_Check(Peace)--->Music_Start Then the trigger that starts the fight music is linked to Invert--->Goal_Set(Peace)
Then the When_Dead that stops the fight music is also linked to a delay(set slightly longer then the fade time of the music stop)--->Cyclic_Timer(length of peace track, send forever), Goal_Check(Peace, -1 added to "Minimum Count")--->Music_Start
In the next room, everything is just copied and pasted minus the Goal_Create events and -1 is added to the "minimum count" of the Goal_Check events. Also the Auto_Trigger--->Cyclic_Timer--->Goal_Check--->Music_Start that started the first peace music is deleted.
So what is happening on top of the fight stuff is a peace goal is created with a value of 0, as soon as the level loads the Cyclic_Timer checks this goal and if it still 0 it starts/loops the peace music. Once the fight music is started the goal is changed to -1 to stop the Cyclic_Timer from looping the peace music again. Once everyone is dead the peace loop is started up again after the fight music fades out.