Здравствуйте. Следующий код вызывает функцию "newMuha" каждые полторы секунды, но при этом, после 3х раз attachMovie больше в ней не работает. Подскажите пожалуйста, в чем проблема - не могу понять

Код:
//прячем мышь и цепляем молоток
Mouse.hide();
molotok_mc.onMouseMove = function() {
this._x = _xmouse;
this._y = _ymouse;
updateAfterEvent();
};
//задаем движение молотка на щелчек
var udar:Object = new Object();
udar.onMouseDown = function() {
trace("ok");
_root.molotok_mc.play();
};
Mouse.addListener(udar);
var i:Number = 0;
function newMuha() {
this.attachMovie("muha_id","muha"+i+"_mc",_root.molotok_mc.getDepth()-1-i);
//задаем координаты прилетающих мух случайно
function randRange(min:Number, max:Number):Number {
var randomNum:Number = Math.floor(Math.random()*(max-min+1))+min;
return randomNum;
}
var n:Number = randRange(10, 800-this["muha"+i+"_mc"]._width);
var p:Number = randRange(10, 500-this["muha"+i+"_mc"]._height);
this["muha"+i+"_mc"]._x = n;
this["muha"+i+"_mc"]._y = p;
//муха начинает ходить
function poshla(u) {
_root["muha"+u+"_mc"].play();
}
setTimeout(poshla,1000,i);
//муха исчезает
function ischezla(k) {
unloadMovie(_root["muha"+k+"_mc"]);
}
setTimeout(ischezla,7000,i);
i++;
}
setInterval(this,"newMuha",1500);