Hello so for my upcoming game I've created a lot of original music for it. Since each level in the game has different zones/areas I have created a system in which the music slowly becomes more intense as the level goes on. What I mean by this is that more and more instruments/sounds are stacked on top of each other as the player progress through the level.
This is done by uploading the different parts or instruments of the track into smaller clips which then can be looped. Then as the player progresses, they will hit several triggers which then plays the music.
The system does play the sounds when you enter the areas but there is a slight problem. The music doesn't sync up with each other. The only solution I could think of is to have a timer that goes down as the loop is playing. Since the music and loops all share the same length is shouldn't be that hard in my opinion. I just haven't come up with a way to do it.
Here is the script for one of the triggers. It's pretty simple but hey it works.
function onTouched(hit)
workspace.Music.Drums:Play()
end
script.Parent.Touched:Connect(onTouched)

2 comments
Don’t set the Playing property to true, use the :Play() method provided by the Sound Object class.
Yeah sorry i know i about it it's just meant to demonstrate the way it works. I'll edit it