Allora se la situazione è questa io strutturerei il menu in questo modo:
- il simbolo menu deve contenere a sua volta un mc chiamato fondo_mc e le tue 5 [o quante ne vuoi] animazioni, che devono essere mc, istanziati per comodità animazione1_mc, animazione2_mc ecc. ecc.
- le animazioni, come da te detto sopra, conterranno le 3 etichette [con opportuni stop();] (start, on, off)
- a questo punto, avendo creato il simbolo menu, puoi trascinarlo sullo stage per 5 volte, istanziano rispettivamente come menu1_mc, menu2_mc ecc. ecc.
- naturalmente sarà sempre presente la tua barretta, istanziata barretta_mc
Una volta fatto ciò puoi incollare nel tuo primo ed unico frame principale questo codice:
codice:
import mx.transitions.*;
import mx.transitions.easing.*;
var stageW:Number = Stage.width;
var pass:Boolean = false;
MovieClip.prototype.muovi = function(__x) {
var mov:Object = new Tween(this, "_x", Regular.easeOut, this._x, __x, 10, false);
};
var menu_array:Array = ["menu1_mc", "menu2_mc", "menu3_mc", "menu4_mc", "menu5_mc"];
var animazione_array:Array = ["animazione1_mc", "animazione2_mc", "animazione3_mc", "animazione4_mc", "animazione5_mc"];
for (i=0; i<menu_array.length; i++) {
this[menu_array[i]].fondo_mc.onRollOver = function() {
_root.barretta_mc.muovi(this._parent._x);
};
this[menu_array[i]].fondo_mc.onRollOut = function() {
_root.barretta_mc.muovi(stageW);
};
for (a=0; a<animazione_array.length; a++) {
this[menu_array[i]][animazione_array[a]].onRollOver = function() {
this.gotoAndPlay("on");
_root.barretta_mc.muovi(this._parent._x);
};
this[menu_array[i]][animazione_array[a]].onRollOut = function() {
this.gotoAndPlay("off");
_root.barretta_mc.muovi(stageW);
};
}
}
Da notare sono le due linee rosse: puoi inserire quanti menu ti pare, ed all'interno di essi quante animazioni ti pare, chiamandoli come vuoi. Basta che una volta inseriti ti ricordi di aggiornare le array [con i nomi giusti naturalmente].