for (i=1; i<=4; i++) {
this['x'+i] = this['mc'+i]._x; //recupera la pos. sull'asse del mc
}
stato = 1; //imposta la var. stato su 1

Questo nei 4 pulsanti:
on (release) {
_root.j = _name.substring(2, 3); recupera il numero del valore di i
_root.stato = this._x>=_root['x'+_root.j]+600 ? 1 : 0;
se la posizione del mc è magg o uguale alla pos sullo stage
+ 600 imposta la var stato su 1 altrimenti su 0
}

Questo su un mc vuoto
onClipEvent (enterFrame) {
if (!_root.stato) { //se la var stato è false(cioè 0)
for (i=_root.j; i<=4; i++) {
_root['mc'+i]._x += (_root['x'+i]+600-_root['mc'+i]._x)/4; //formula uniformemente decelerata (probabilmente è un effetto di un qualcosa che si muove sull'asse delle x e pian piano rallenta fino a fermarsi)
}
} else if (_root.stato) {//se la var stato è true(cioè 1)
for (i=1; i<=_root.j; i++) {
_root['mc'+i]._x += (_root['x'+i]-_root['mc'+i]._x)/4; stessa cosa al contrario (recupera la pos del mc sullo stage e con movimento uniformemente decelerato ritorna a posto)

}
}
}

p.s.

non sono una cima spero di aver scritto cose sensate .

se ho cannato qualcuno mi corregga in modo che anche io possa migliorare grazie.