# Preloader Class Causing a Migrane!

**URL:** <https://forum.kirupa.com/t/preloader-class-causing-a-migrane/304731>\
**Category:** Uncategorized\
**Created:** [February 12, 2010, 6:05pm UTC](https://forum.kirupa.com/t/preloader-class-causing-a-migrane/304731 "2010-02-12T18:05:17Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![J\_Mo](https://avatars.discourse-cdn.com/v4/letter/j/dc4da7/32.png) [@J\_Mo](https://forum.kirupa.com/u/J_Mo)\
**Post date:** [February 12, 2010, 6:05pm UTC](https://forum.kirupa.com/t/preloader-class-causing-a-migrane/304731/1 "2010-02-12T18:05:17Z")

</div>

Hi,

I have used a preloader class that loads an external “main” movie.

Whilst the main movie works fine alone I have issues when it is loaded through the preloader class.

> TypeError: Error #1009: Cannot access a property or method of a null object reference.  
> at roberts\_fla::MainTimeline/roberts\_fla::frame1()

I do not know how to correct the issue, my AS for the preloader class is:

```auto
import flash.events.ProgressEvent;
stage.scaleMode = "noScale";
stage.align = "tl";
import fl.transitions.Tween;
import fl.transitions.easing.*;
import com.greensock.*;
import com.greensock.easing.*;

var l:Loader = new Loader();
l.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loop);
l.contentLoaderInfo.addEventListener(Event.COMPLETE, done);
l.load(new URLRequest("roberts.swf"));

preloader_mc.x = stage.stageWidth / 2;
var preloader_y:Tween = new Tween(preloader_mc, "y", Elastic.easeOut, (stage.stageHeight/2)+150, stage.stageHeight/2, 3, true);
var preloader_alpha:Tween = new Tween(preloader_mc, "alpha", Regular.easeOut, 0, 1, 0.5, true);

stage.addEventListener(Event.RESIZE, resizeListenerloader);

function resizeListenerloader(Event) {
	preloader_mc.x = stage.stageWidth / 2;
	preloader_mc.y = stage.stageHeight / 2;

} 

function loop(e:ProgressEvent):void {
	var perc:Number = Math.floor( (e.bytesLoaded*100)/e.bytesTotal );
	percent.text = Math.ceil(perc).toString();

	if (preloader_mc is MovieClip) {
		preloader_mc.gotoAndStop(perc);
	}
}

function done(e:Event):void {
	TweenLite.to(preloader_mc, 0.7, {y:(stage.stageHeight/2)-150, alpha: 0, ease:Strong.easeOut, onComplete: out});
}

function out(param1:Number=0, param2:Number=0):void {
	removeChildAt(0);
	removeChild(preloader_mc);
	percent = null;
	addChild(l);
	stage.removeEventListener(Event.RESIZE, resizeListenerloader);
}

```

and frame 1 of the main is:

```auto
stage.scaleMode = "noScale";
stage.align = "tl";

stop();

scripthold_mc.x = stage.stageWidth / 2;
scripthold_mc.y = stage.stageHeight / 2;

	stage.addEventListener(Event.RESIZE, resizeListenerscript);
//then in the resize handler:
function resizeListenerscript(Event)
{
	scripthold_mc.x = stage.stageWidth / 2;
	scripthold_mc.y = stage.stageHeight / 2;

}

scripthold_mc.enter_mc.addEventListener(MouseEvent.MOUSE_DOWN, entersite);
scripthold_mc.enter_mc.buttonMode = true;
function entersite(MouseEvent):void {
gotoAndPlay("mainstart","main")
}

```

Can anyone help me please?

Thanks  
Phil
