Доброе время суток!
Я решил сделать менюшку напоминающую смену окон в висте.
Несколько кнопок, которые прячутся друг за дружкой, при нажатии на любую они меняются местами по кругу(в дальнейшем это должно будет происходить при вращении колёсика мышки...).
Меняются координаты и размеры в соответствии с положением кнопки, а также глубина кнопок, дабы они правильно друг дружку перекрывали.
Всё вродебы работает, НО кнопка с именем "b4" всегда находится поверх двух соседних, в то время как все остальные меняют свою шлуюину правильно.
Люди помогите плз не могу найти что я не так делаю.
Вот код плюс сам файл:

Код AS1/AS2:
for(var i=0;i<5;i++){
this["b"+i]._alpha=50+10*(i+1);
}
//--------------------------------------------------------------------------------
var xx:Array = new Array(this.b0._x,this.b1._x,this.b2._x,this.b3._x,this.b4._x); // массив с координатам x
var yy:Array = new Array(this.b0._y,this.b1._y,this.b2._y,this.b3._y,this.b4._y); // массив с координатам y
var dep:Array = new Array(this.b0.getDepth(),this.b1.getDepth(),this.b2.getDepth(),this.b3.getDepth(),this.b4.getDepth());
// массив с глубинами кнопок
var mcs:Array = new Array("b0","b1","b2","b3","b4"); // массив с названиями кнопок
var mcs_:Array = new Array(); // массив с перемещёнными названиями кнопок
var z = 0; // количество перемещённых названий
//--------------------------------------------------------------------------------
function arr_dreh():Void{ // функция для перемещения названия кнопок в массиве
var d=0; // первый индекс не тронутого элемента mcs
for(var j=0;j<z+1;j++){ // копируем значение последнего элемента массива mcs в первый элемент mcs_
mcs_[z-j]=mcs[4-j];
}
for(var k=z+1;k<5;k++){
mcs_[k]=mcs[d]; // заполняем оставшиеся элементы mcs_ не тронутыми элементами mcs
d++; // индекс следующего не тронутого элемента mcs
}
if(z<4){z++;}else{z=0;} // увеличиваем количество перемещённых названий, если оно превышает возможное количество, онулирываем его
}
//--------------------------------------------------------------------------------
function change_urovenj(){
arr_dreh(); // Запускаем функцию перемещения названий кнопок
for(var c=0;c<5;c++){ // В соответствии с перемещёнными названиями кнопок, меняе свойства кнопок:
this[mcs_[c]]._alpha=50+10*(c+1); // прозрачность
this[mcs_[c]]._x=xx[c]; // x координата
this[mcs_[c]]._y=yy[c]; // y координата
this[mcs_[c]]._width=76+c*10; // широта
this[mcs_[c]]._height=22+c*5; // высота
this[mcs_[c]].swapDepths(dep[c]); // глубина
updateAfterEvent();
}
}
//--------------------------------------------------------------------------------