Даже не знаю.... очень много всего нужно переделывать...
Зачем такое количество твинов? Да еще и не удаляющихся... плеер по-идее должен скончаться после эдак 10-20 минут работы такого меню.

Код:
Tween(info1, "_x", Back.easeOut, 1100, 1100, 1, true);
4-й аргумент - исходная позиция, 5-й конечная. Какой смысл создавать твин и не создавать анимацию? В смысле, движения-то все равно никакого не будет...
ща попробую сделать простенький пример с похожей логикой...

Код:
import mx.transitions.Tween;
import mx.transitions.easing.*;
//
var select:Number;
var clips:Array = [];
var __tw:Tween = new Tween({i:0},"i",Back.easeOut, 0, 100, 1, true);
__tw.stop();
__tw.addListener(this);
onMotionChanged = function():Void {
for(var q:Number=0;q<clips.length;q++){
if(clips[q].__id != select){
if(clips[q]._lastPos == undefined){
clips[q]._lastPos = clips[q]._x;
}
if(clips[q]._x == 0){
delete clips[q]._lastPos;
}
clips[q]._x = clips[q]._lastPos-clips[q]._lastPos*__tw.obj.i/100;
} else {
clips[q]._x = __tw.obj.i;
}
}
}
onMotionFinished = function(){
for(var q:Number=0;q<clips.length;q++){
delete clips[q]._lastPos;
}
}
onMotionStarted = function(){
for(var q:Number=0;q<clips.length;q++){
delete clips[q]._lastPos;
}
}
for(var q:Number=0;q<5;q++){
var mc:MovieClip = rct(this,100,20,Math.random()*0xffffff,100);
mc._y = q*21;
mc.__id = q;
mc.onRelease = function():Void {
_root.select = this.__id;
_root.onMotionStarted();
_root.__tw.start();
}
clips.push(mc);
}
function rct(mc:MovieClip,w:Number,h:Number,c:Number,a:Number):MovieClip{
var _mc:MovieClip = mc.createEmptyMovieClip("rct"+mc.getNextHighestDepth(),mc.getNextHighestDepth());
_mc.beginFill(c,a);
_mc.moveTo(0,0);
_mc.lineTo(w,0);
_mc.lineTo(w,h);
_mc.lineTo(0,h);
_mc.lineTo(0,0);
_mc.endFill();
return _mc;
}
Ну, может красотой хорошего стиля не блещет, но все приятнее будет.