HELP! clicking too fast on menu messes up tween

I am using the on(release) and the tween class to fade and move movieclips on the stage - no timeline animation. I am NOT a programmer so keep that in mind when looking at my code!

It works fine if you don’t click too fast, but once you really test it, the tweening doesn’t finish on one movieclip before the next one starts.

[COLOR=darkred]My code for getting rid of the one menu before the next comes on is:

/* move service buttons back and invisible*/
new mx.transitions.Tween(mc_st, “_alpha”, mx.transitions.easing.Regular.easeIn, 100, 0, .005, true);
new mx.transitions.Tween(mc_st, “_x”, mx.transitions.easing.Back.easeOut, 325, 425, .005, true);
new mx.transitions.Tween(mc_de, “_alpha”, mx.transitions.easing.Regular.easeIn, 100, 0, .005, true);
new mx.transitions.Tween(mc_de, “_x”, mx.transitions.easing.Back.easeOut, 365, 450, .005, true);
new mx.transitions.Tween(mc_co, “_alpha”, mx.transitions.easing.Regular.easeIn, 100, 0, .005, true);
new mx.transitions.Tween(mc_co, “_x”, mx.transitions.easing.Back.easeOut, 405, 475, .005, true);
new mx.transitions.Tween(mc_an, “_alpha”, mx.transitions.easing.Regular.easeIn, 100, 0, .005, true);
new mx.transitions.Tween(mc_an, “_x”, mx.transitions.easing.Back.easeOut, 445, 500, 1, true);
new mx.transitions.Tween(mc_su, “_alpha”, mx.transitions.easing.Regular.easeIn, 100, 0, .005, true);
new mx.transitions.Tween(mc_su, “_x”, mx.transitions.easing.Back.easeOut, 485, 525, .005, true);
new mx.transitions.Tween(mc_ap, “_alpha”, mx.transitions.easing.Regular.easeIn, 100, 0, .005, true);
new mx.transitions.Tween(mc_ap, “_x”, mx.transitions.easing.Back.easeOut,525, 550, .005, true);

/* move photo slices back and make invisible */
new mx.transitions.Tween(mcPhoto_ap_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 35, 0, .005, true);
new mx.transitions.Tween(mcPhoto_ap_slice_small, “_x”, mx.transitions.easing.Back.easeIn, 414, 624, .005, true);
new mx.transitions.Tween(mcPhoto_su_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 35, 0, .0051, true);
new mx.transitions.Tween(mcPhoto_su_slice_small, “_x”, mx.transitions.easing.Back.easeIn, 374, 584, .005, true);
new mx.transitions.Tween(mcPhoto_an_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 35, 0, .005, true);
new mx.transitions.Tween(mcPhoto_an_slice_small, “_x”, mx.transitions.easing.Back.easeIn, 334, 544, .005, true);
new mx.transitions.Tween(mcPhoto_co_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 35, 0, .005, true);
new mx.transitions.Tween(mcPhoto_co_slice_small, “_x”, mx.transitions.easing.Back.easeIn, 294, 504, .005, true);
new mx.transitions.Tween(mcPhoto_de_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 35, 0, .005, true);
new mx.transitions.Tween(mcPhoto_de_slice_small, “_x”, mx.transitions.easing.Back.easeIn, 254, 464, .005, true);
new mx.transitions.Tween(mcPhoto_st_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 35, 0, .005, true);
new mx.transitions.Tween(mcPhoto_st_slice_small, “_x”, mx.transitions.easing.Back.easeIn, 214, 424, .005, true);

and my code for bringing on the next menu is:

/* move work buttons into place and make visible */
new mx.transitions.Tween(mc_01, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_01, “_x”, mx.transitions.easing.Back.easeOut, mc_01._x, 165, .05, true);
new mx.transitions.Tween(mc_02, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_02, “_x”, mx.transitions.easing.Back.easeOut, mc_02._x, 205, .1, true);
new mx.transitions.Tween(mc_03, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_03, “_x”, mx.transitions.easing.Back.easeOut, mc_03._x, 245, .15, true);
new mx.transitions.Tween(mc_04, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_04, “_x”, mx.transitions.easing.Back.easeOut, mc_04._x, 285, .2, true);
new mx.transitions.Tween(mc_05, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_05, “_x”, mx.transitions.easing.Back.easeOut, mc_05._x, 325, .25, true);
new mx.transitions.Tween(mc_06, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_06, “_x”, mx.transitions.easing.Back.easeOut, mc_06._x, 365, .3, true);
new mx.transitions.Tween(mc_07, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_07, “_x”, mx.transitions.easing.Back.easeOut, mc_07._x, 405, .35, true);
new mx.transitions.Tween(mc_08, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_08, “_x”, mx.transitions.easing.Back.easeOut, mc_08._x, 445, 4, true);
new mx.transitions.Tween(mc_09, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_09, “_x”, mx.transitions.easing.Back.easeOut, mc_09._x, 485, .45, true);
new mx.transitions.Tween(mc_10, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 100, .3, true);
new mx.transitions.Tween(mc_10, “_x”, mx.transitions.easing.Back.easeOut, mc_10._x, 525, .5, true);

/* move photo slices into place and make visible */
new mx.transitions.Tween(mcPhoto10_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto10_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto10_slice_small._x, 414, .5, true);
new mx.transitions.Tween(mcPhoto09_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto09_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto09_slice_small._x, 374, .45, true);
new mx.transitions.Tween(mcPhoto08_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto08_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto08_slice_small._x, 334, .4, true);
new mx.transitions.Tween(mcPhoto07_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto07_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto07_slice_small._x, 294, .35, true);
new mx.transitions.Tween(mcPhoto06_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto06_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto06_slice_small._x, 254, .3, true);
new mx.transitions.Tween(mcPhoto05_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto05_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto05_slice_small._x, 214, .25, true);
new mx.transitions.Tween(mcPhoto04_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto04_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto04_slice_small._x, 174, .2, true);
new mx.transitions.Tween(mcPhoto03_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto03_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto03_slice_small._x, 134, .15, true);
new mx.transitions.Tween(mcPhoto02_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35, .5, true);
new mx.transitions.Tween(mcPhoto02_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto02_slice_small._x, 94, .1, true);
new mx.transitions.Tween(mcPhoto01_slice_small, “_alpha”, mx.transitions.easing.Regular.easeIn, 0, 35,.5, true);
new mx.transitions.Tween(mcPhoto01_slice_small, “_x”, mx.transitions.easing.Back.easeIn, mcPhoto01_slice_small._x, 54, .05, true);[/COLOR]

There is other code in between but these are the ones that mess up. You can see this at [COLOR=#22229c]http://www.parallelic.com/test[/COLOR] - click between work and services on the menu.

Thanks for any suggestions!