TypeError: Error #1009

Hello!

My problem is pretty wierd…

this is my code:

stop();

import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.net.*;
import flash.utils.*;
import fl.transitions.*;
import fl.transitions.easing.*;

var present:Number = 0;
var timer:Timer = new Timer(11000);
var box:Sprite = new Sprite();
var firstRun:Boolean = true;
var describe:TextField = new TextField();
var style:TextFormat = new TextFormat();
var titleField:TextField = new TextField();
var titleFormat:TextFormat = new TextFormat();
var MyFont:Font = new TrebuchetMS();

for (var i:int = 0; i<MovieClip(root).sliderImages.length; i++)
{
    addChild(MovieClip(root).sliderImages*);
    present = i;
}

style.font = MyFont.fontName;
style.size = 12;
style.color = 0xDDDDDD;

describe.autoSize = TextFieldAutoSize.LEFT;
describe.antiAliasType = AntiAliasType.ADVANCED;
describe.embedFonts = true;
describe.selectable = false;
describe.defaultTextFormat = style;

describe.x = 5;
describe.y = 235;

titleFormat.font = MyFont.fontName;
titleFormat.size = 16;
titleFormat.color = 0xFFFFFF;

titleField.autoSize = TextFieldAutoSize.LEFT;
titleField.antiAliasType = AntiAliasType.ADVANCED;
titleField.embedFonts = true;
titleField.selectable = false;
titleField.defaultTextFormat = titleFormat;

titleField.x = 5;
titleField.y = 205;

box.graphics.beginFill(0x000000, 0.65);
box.graphics.drawRect(0, 200, 850, 90);
box.graphics.endFill();
box.alpha = 0;
box.addChild(titleField);
box.addChild(describe);
addChild(box);
box.buttonMode = true;
box.addEventListener (MouseEvent.CLICK, navigate);

titleField.text = MovieClip(root).Xml.Sliders.Item[present].@Title;
describe.text = MovieClip(root).sliderTexts[present];

var tween7:Tween = new Tween(box, 'alpha', Strong.easeInOut, 0, 1, 1, true);
tween7.addEventListener(TweenEvent.MOTION_FINISH, boxFinish);
    
timer.addEventListener( TimerEvent.TIMER, boxDisapear );
timer.start();

function animate (e:TweenEvent):void
{
    box.x = -10000;
    
    if (present == 0)
    {
        describe.text = MovieClip(root).sliderTexts[MovieClip(root).sliderImages.length - 1];
        titleField.text = MovieClip(root).Xml.Sliders.Item[MovieClip(root).sliderImages.length - 1].@Title;
    }
    else
    {
        trace(MovieClip(root).Xml.Sliders.Item[present-1]);
        describe.text = MovieClip(root).Xml.Sliders.Item[present-1];
        titleField.text = MovieClip(root).Xml.Sliders.Item[present-1].@Title;
    }
    
    var rnd:Number = Math.ceil(Math.random()*3);
    
    switch (rnd)
    {
        case 1:
            var tween1:Tween = new Tween(MovieClip(root).sliderImages[present], 'x', Elastic.easeInOut, 0, -1000, 2, true);
            tween1.addEventListener(TweenEvent.MOTION_FINISH, tweenFinish);
            break;
        case 2:
            var tween2:Tween = new Tween(MovieClip(root).sliderImages[present], 'x', Elastic.easeInOut, 0, 1000, 2, true);
            tween2.addEventListener(TweenEvent.MOTION_FINISH, tweenFinish);
            break;
        case 3:
            var tween3:Tween = new Tween(MovieClip(root).sliderImages[present], 'y', Elastic.easeInOut, 0, -1000, 2, true);
            tween3.addEventListener(TweenEvent.MOTION_FINISH, tweenFinish);
            break;
        case 4:
            var tween4:Tween = new Tween(MovieClip(root).sliderImages[present], 'y', Elastic.easeInOut, 0, 1000, 2, true);
            tween4.addEventListener(TweenEvent.MOTION_FINISH, tweenFinish);
            break;
    }
    
}

function tweenFinish (e:TweenEvent):void
{
    box.x = 0;
    var tween5:Tween = new Tween(box, 'alpha', Strong.easeInOut, 0, 1, 0.5, true);
    tween5.addEventListener(TweenEvent.MOTION_FINISH, boxFinish);
            
    setChildIndex(MovieClip(root).sliderImages[present], 0);
    MovieClip(root).sliderImages[present].x = 0;
    MovieClip(root).sliderImages[present].y = 0;
    
    present--;
    
    if (present == -1) present = MovieClip(root).sliderImages.length - 1;
    
    MovieClip(root).sliderImages[present].addEventListener (MouseEvent.CLICK, navigate);
}

function boxFinish (e:TweenEvent):void
{
}

function boxDisapear (e:TimerEvent):void
{
    var tween6:Tween = new Tween(box, 'alpha', Strong.easeInOut, 1, 0, 0.5, true);
    tween6.addEventListener(TweenEvent.MOTION_FINISH, animate);
}

function navigate (e:MouseEvent):void
{
    navigateToURL( new URLRequest ( MovieClip(root).sliderLinks[present] ), '_self');
}

I have this code in MovieClip called Sliders in library it is creating slideshow

In 2nd frame (root) i have this:

var SlidersMc:Sliders = new Sliders();

addChild(SlidersMc);

makeButtons();

witch is adding to stage mc from lib. In frame 3 (root) i have this:

removeChild(SlidersMc);

Witch removing it from stage (to display other mc)

And the wird think is… When I test movie after preloader (frame 1) it goes to the second (with SliderMc) and all is great working perfectly, but… when I go frame 3 (root)(where it is removed) and go back to the second (all started clean again) i gives me error:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at Sliders/animate()[Sliders::frame1:83]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at fl.transitions::Tween/set time()
at fl.transitions::Tween/nextFrame()
at fl.transitions::Tween/onEnterFrame()

at this line:

trace(MovieClip(root).Xml.Sliders.Item[present-1]);

When I comment trace it go to another line.

I’ have discover that is evetywhere where MovieClip(root) is used in animate function only! ;/ is it possible that it makes problem?

What is he’s problem?! It is working at first time and now null obejct ref? WTF? Help me pls!