why can’t i access the container and preloader as defined in my OnMotionFinished Function?!
/**
Load Sub Stage class
author: Ahmed I. Masri
version: 1.1
modified: 08/11/2008
copyright: Ahmed I. Masri
This code defines a custom class that loads the correct sub movie.
*/
// Import Built-In Classes
import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;
// Class to Load SubStages
class LoadSubStage {
// Variable Definitions
var Container:MovieClip;
var StageLoader:MovieClipLoader;
var Listener:Object;
var Preloader:MovieClip;
// Constructor Function to Select SubStage and prepare Stage
public function LoadSubStage(linkToFile:String) {
if (linkToFile != "intro_stage.swf") return;
LIntroStage(linkToFile);
}
// Constructor Function to PreLoad and present Intro SubStage
private function LIntroStage(linkToFile):Void {
// Variable definitions
StageLoader = new MovieClipLoader();
Listener = new Object();
StageLoader.addListener(Listener);
// Empty Movie Clip to place Intro SubStage
Container = _root.createEmptyMovieClip("MC_emptyHolder", _root.getNextHighestDepth());
Container._x = 0;
Container._y = 55;
// Function to handle (pre)loading
Listener.onLoadStart = Delegate.create(this, onLoadStart);
Listener.onLoadProgress = Delegate.create(this, onLoadProgress);
Listener.onLoadInit = Delegate.create(this, onLoadInit);
Preloader = _root.attachMovie("MC_stageLoader", "MC_stageLoader" , _root.getNextHighestDepth(), {_x:400, _y:261.5});
Preloader.MC_loadingProgressBar._width = 0;
Preloader.txt_PercentLoaded.text = "00";
// Loading of SubStage
StageLoader.loadClip(linkToFile, Container);
}
// Function to handle start of (pre)loading
private function onLoadStart() {
Container._visible = false;
}
// Function to handle progress of (pre)loading
private function onLoadProgress(mc:MovieClip, l:Number, t:Number):Void {
Preloader.MC_loadingProgressBar._width = (l / t) * (Stage.width * 1.2);
Preloader.txt_PercentLoaded.text = Math.round((l / t) * 100);
}
// Function to handle completion of (pre)loading
private function onLoadInit():Void {
// Variable definition
var middleOrangeBarY:Number = _root.MC_headerBackground.MC_middleOrangeBar._y;
var bottomOrangeBarY:Number = _root.MC_headerBackground.MC_bottomOrangeBar._y;
// Fade out Preloader;
var tweenPreloaderFade:Tween = new Tween(Preloader, "_alpha", Strong.easeOut, 100, 0, 10, false);
var tweenMiddleBar:Tween = new Tween(_root.MC_headerBackground.MC_middleOrangeBar, "_y", Strong.easeOut, middleOrangeBarY, -3.5, 10, false);
var tweenBottomBar:Tween = new Tween(_root.MC_headerBackground.MC_bottomOrangeBar, "_y", Strong.easeOut, bottomOrangeBarY, 619, 10, false);
// On completion of Fade out
tweenPreloaderFade.onMotionFinished = function() {
Preloader.removeMovieClip();
Container._visible = true;
}
}
}