I’m trying to help out a friend and apparently, I cant. :-/
There is 3 movie clips and 1 intro movie. At the end of each movie there is a function to call the root function
MovieClip(root).addFrameScript(626, 2);
This is the code on the root in frame 1
stop ();
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.MovieClip;
import flash.display.Sprite;
/*trace("Frame 1");*/
var movieArray:Array = new Array();
movieArray = ["PersonMc1","PersonMc2","PersonMc3"];
var MovieClipContainer:Sprite=new Sprite();
var IntroMc1:IntroMc=new IntroMc();
var PersonMc1:Person1Mc=new Person1Mc();
var PersonMc2:Person2Mc=new Person2Mc();
var PersonMc3:Person3Mc=new Person3Mc();
addChild (MovieClipContainer);
MovieClipContainer.addChild (IntroMc1);
MovieClipContainer.addChild (PersonMc1);
MovieClipContainer.addChild (PersonMc2);
MovieClipContainer.addChild (PersonMc3);
PersonMc1.visible = false;
PersonMc2.visible = false;
PersonMc3.visible = false;
PersonMc1.stop ();
PersonMc2.stop ();
PersonMc3.stop ();
and this is the code on frame 2
stop ();
var prevIndex:int;
clickStart ();
function clickStart () {
if ((MovieClip(root).movieArray[Math.floor(Math.random() * 3)]) == "PersonMc1") {
if (MovieClip(root).movieArray == PersonMc1) {
clickStart ();
} else {
MovieClip(root).PersonMc1.visible = true;
MovieClip(root).PersonMc1.gotoAndPlay (1);
prevIndex = MovieClip(root).MovieClipContainer.getChildIndex(PersonMc1);
MovieClip(root).MovieClipContainer.setChildIndex (PersonMc1,MovieClip(root).MovieClipContainer.numChildren-1);
trace (prevIndex);
trace (MovieClip(root).MovieClipContainer.numChildren-1);
}
} else if ((MovieClip(root).movieArray[Math.floor(Math.random() * 3)]) == "PersonMc2") {
if (MovieClip(root).movieArray == PersonMc2) {
clickStart ();
} else {
MovieClip(root).PersonMc2.visible = true;
MovieClip(root).PersonMc2.gotoAndPlay (1);
prevIndex = MovieClip(root).MovieClipContainer.getChildIndex(PersonMc2);
MovieClip(root).MovieClipContainer.setChildIndex (PersonMc2,MovieClip(root).MovieClipContainer.numChildren-1);
trace (prevIndex);
}
} else if ((MovieClip(root).movieArray[Math.floor(Math.random() * 3)]) == "PersonMc3") {
if (MovieClip(root).movieArray == PersonMc3) {
clickStart ();
} else {
MovieClip(root).PersonMc3.visible = true;
MovieClip(root).PersonMc3.gotoAndPlay (1);
prevIndex = MovieClip(root).MovieClipContainer.getChildIndex(PersonMc3);
MovieClip(root).MovieClipContainer.setChildIndex (PersonMc3,MovieClip(root).MovieClipContainer.numChildren-1);
trace (prevIndex);
}
}
}
There seems to be a lot of repeat code doing the same thing but I cant get it to work. There needs to be a way to create a random list and play that list without a repeat. The issue is, the current movie needs to animate OVER the previous movie but if the same movie animates twice, it is blank underneath and looks like a glitch.
I thought I could figure out an easy solution, but I’m just not all that good with AS3 as I aspire to.
Thanks very much for your time, I really appreciate it!