Have you tried media_playing(var handle) instead of your while(handle_intro_played) loop?