Привет! Друзья, помогите разобраться с такой вот ситуёвиной: в классе не работает setInterval (), а точнее не создается экземпляр другого класса.

Код:
import mx.utils.Delegate;
class LevelOne {
private var mc:MovieClip;
private var n:Number;
private var interval:Number;
private var rapid:Number = 100;
public function LevelOne (_mc:MovieClip){
mc = _mc;
mc.onMouseDown = Delegate.create(this, shoot);
mc.onMouseUp = Delegate.create(this, finish);
}
private function shoot ():Void{
n = setInterval (create, rapid);
}
private function finish ():Void{
clearInterval (n);
}
private function create ():Void{
trace ("kkk"); //этот трэйс срабатывает
var bul:Shot = new Shot (mc); //экземпляр на сцене не появляется
}
}
Вот на всякий случай код класса, экземпляр которого нужно создать:

Код:
class Shot {
private var missile:MovieClip;
private var _mc:MovieClip;
private static var a:Number = 0;
public function Shot (mc:MovieClip){
_mc = mc;
a ++;
missile = _mc.attachMovie("inst", "inst" + a, _mc.getNextHighestDepth ());
}
}
Я думаю что это проблемы с "малопонятной" областью видимости этого самого setInterval ()...