Лучше так:

Код AS1/AS2:
var s:Sound = new Sound();
s.loadSound('sound.mp3', false); //загружаем заранее, чтобы в нужный момент не было задержки
this.onEnterFrame = checkTime;
function checkTime () {
if (alarm_day == local_day && alarm_hours == local_hours && alarm_minutes == local_minutes) { //как писал выше, каждую секунду сверяю установленное время с системным
delete this.onEnterFrame ;
s.start();
}
}
Преимущество - все работает как вам надо, а если нужно опять "завести будильник", то , выставив ваше время, достаточно опять назначить функцию проверки строкой:

Код AS1/AS2:
this.onEnterFrame = checkTime;