# Detecting movie clips off stage!

**URL:** <https://forum.kirupa.com/t/detecting-movie-clips-off-stage/271047>\
**Category:** flash\
**Created:** [September 17, 2008, 6:52pm UTC](https://forum.kirupa.com/t/detecting-movie-clips-off-stage/271047 "2008-09-17T18:52:39Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![creativemindz](https://avatars.discourse-cdn.com/v4/letter/c/dec6dc/32.png) [@creativemindz](https://forum.kirupa.com/u/creativemindz)\
**Post date:** [September 17, 2008, 6:52pm UTC](https://forum.kirupa.com/t/detecting-movie-clips-off-stage/271047/1 "2008-09-17T18:52:39Z")

</div>

Okey,

So here’s the deal I have a series of large and small envelopes dynamically attached to my stage, and I’m trying to think of a way to detect when all of my movieclips have been removed from my stage, onRollOver. Any suggestions, I was thinking of using a for in loop to detect them but that didn’t work. I have uploaded my files to usendit, click on the url below, and i also pasted my code.

[http://senduit.com/40483e](http://senduit.com/40483e)

thanks:m:

stop();

import gs.TweenLite;  
import mx.transitions.easing.\*;

var numEnvelopes:Number = 15;  
var numEnvelopes2:Number = 4;

var \_duration:Number = 1;

var frame0Duration:Number = 2;  
var frame1Duration:Number = 3;  
var frame2Duration:Number = 3;

var timeWait:Number = 4000;

var sentence0:MovieClip = sentence0\_mc;  
var sentence1:MovieClip = clear\_mc;  
var sentence2:MovieClip = sentence1\_mc;

var clearPage:Boolean = true;

sentence0.\_alpha = 0;  
sentence1.\_alpha = 0;  
sentence1.\_xscale = 0;  
sentence2.\_alpha = 0;

inv\_btn.\_visible = false;

sign\_up\_mc.enabled = false;

var showLanding:Boolean = false;  
var removeBar:Boolean = true;

var btnOver:Boolean;

function animateAnimation():Void  
{  
TweenLite.to(sentence0,2,{\_alpha:100, ease:Strong.easeOut, onComplete:buildEnvelopes});  
}  
animateAnimation();

function buildEnvelopes():Void  
{  
TweenLite.to(sentence0,\_duration,{\_alpha:0, ease:Strong.easeOut, overwrite:false});  
for (var i:Number = 0; i \< numEnvelopes; i++)  
{  
var smallEnvelope:MovieClip = small\_container\_mc.attachMovie(“small\_envelope\_mc”, “small\_env” + (i) + “\_mc”, i);

```
    TweenLite.to(smallEnvelope,_duration,{_x:Math.floor((Math.random() * Stage.width)), overwrite:false, ease:Strong.easeOut});
    TweenLite.to(smallEnvelope,_duration,{_y:Math.floor((Math.random() * Stage.height)), overwrite:false, ease:Strong.easeOut});
    TweenLite.to(smallEnvelope,_duration,{_rotation:Math.floor((Math.random() * 180)), overwrite:false, ease:Strong.easeOut});

    smallEnvelope.onRollOver = function()
    {
        if (_root.btnOver == false)
        {
            trace('here1');
            _root.btnOver = true;
            TweenLite.to(this,2.0,{_x:Math.floor((Math.random() * Stage.width - Stage.width - 250)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_y:Math.floor((Math.random() * Stage.height - Stage.height - 250)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_rotation:Math.floor((Math.random() * 180)), overwrite:false, ease:Strong.easeOut});
            revealSentence();
            clearOut();
            trace(_global.intervalID);
            clearInterval(_global.intervalID);
        }
        else
        {
            trace('here2');
            TweenLite.to(this,2.0,{_x:Math.floor((Math.random() * Stage.width - Stage.width - 250)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_y:Math.floor((Math.random() * Stage.height - Stage.height - 250)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_rotation:Math.floor((Math.random() * 180)), overwrite:false, ease:Strong.easeOut});
        }
    };
}
for (var i:Number = 0; i &lt; numEnvelopes2; i++)
{
    var bigEnvelope:MovieClip = large_container_mc.attachMovie("big_envelope_mc", "big_env" + (i) + "_mc", i);

    TweenLite.to(bigEnvelope,_duration,{_x:Math.floor((Math.random() * Stage.width)), overwrite:false, ease:Strong.easeOut});
    TweenLite.to(bigEnvelope,_duration,{_y:Math.floor((Math.random() * Stage.height)), overwrite:false, ease:Strong.easeOut});
    TweenLite.to(bigEnvelope,_duration,{_rotation:Math.floor((Math.random() * 180)), overwrite:false, ease:Strong.easeOut});

    bigEnvelope.onRollOver = function()
    {
        if (_root.btnOver == false)
        {
            trace('here1');
            _root.btnOver = true;
            TweenLite.to(this,2.0,{_x:Math.floor((Math.random() * Stage.width - Stage.width + 565)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_y:Math.floor((Math.random() * Stage.height - Stage.height + 595)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_rotation:Math.floor((Math.random() * -180)), overwrite:false, ease:Strong.easeOut});
            revealSentence();
            clearOut();
            trace(_global.intervalID);
            clearInterval(_global.intervalID);
        }
        else
        {
            trace('here2');
            TweenLite.to(this,2.0,{_x:Math.floor((Math.random() * Stage.width - Stage.width + 565)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_y:Math.floor((Math.random() * Stage.height - Stage.height + 595)), overwrite:false, ease:Strong.easeOut});
            TweenLite.to(this,2.0,{_rotation:Math.floor((Math.random() * -180)), overwrite:false, ease:Strong.easeOut});
        }
    };
}
revealClear();

```

}

function revealClear():Void  
{  
TweenLite.to(sentence1,0.75,{\_alpha:100, delay:0.55, ease:Strong.easeOut, overwrite:false});  
TweenLite.to(sentence1,0.75,{\_xscale:100, delay:0.55, ease:Strong.easeOut, overwrite:false, onComplete:createInterval});  
}

function createInterval():Void  
{  
\_global.intervalID = setInterval(clearOut, timeWait);  
\_root.btnOver = false;  
}

function clearOut():Void  
{  
trace(“clearOut” + \_root.btnOver);  
if (\_root.btnOver == true)  
{  
clearInterval(\_global.intervalID);  
//trace("Found interval: " + \_global.intervalID);  
TweenLite.to(sentence1,0.75,{\_alpha:0, ease:Strong.easeOut, overwrite:false});  
TweenLite.to(sentence1,0.75,{\_xscale:200, ease:Strong.easeOut, overwrite:false});  
TweenLite.to(sentence1,0.75,{\_yscale:0, ease:Strong.easeOut, overwrite:false});  
}  
else  
{  
trace("Found interval: " + \_global.intervalID);  
clearInterval(\_global.intervalID);  
TweenLite.to(sentence1,0.75,{\_alpha:0, ease:Strong.easeOut, overwrite:false});  
TweenLite.to(sentence1,0.75,{\_xscale:200, ease:Strong.easeOut, overwrite:false});  
TweenLite.to(sentence1,0.75,{\_yscale:0, ease:Strong.easeOut, overwrite:false, onComplete:removeEnvelopes});  
}  
}

function removeEnvelopes():Void  
{  
trace(“removeing envelopes!”);  
for (var i:Number = 0; i \< numEnvelopes; i++)  
{  
//trace(small\_container\_mc[“small\_env”+(i)+"\_mc"]);  
var smallEnvelope:MovieClip = small\_container\_mc[“small\_env” + (i) + “\_mc”];  
TweenLite.to(smallEnvelope,2.0,{\_x:Math.floor((Math.random() \* Stage.width - Stage.width - 250)), overwrite:false, ease:Strong.easeOut});  
TweenLite.to(smallEnvelope,2.0,{\_y:Math.floor((Math.random() \* Stage.height - Stage.height - 250)), overwrite:false, ease:Strong.easeOut});  
TweenLite.to(smallEnvelope,2.0,{\_rotation:Math.floor((Math.random() \* 180)), overwrite:false, ease:Strong.easeOut});  
}  
for (var i:Number = 0; i \< numEnvelopes2; i++)  
{  
//trace(large\_container\_mc[“big\_env”+(i)+"\_mc"]);  
var bigEnvelope:MovieClip = large\_container\_mc[“big\_env” + (i) + “\_mc”];  
TweenLite.to(bigEnvelope,2.0,{\_x:Math.floor((Math.random() \* Stage.width - Stage.width + 565)), overwrite:false, ease:Strong.easeOut});  
TweenLite.to(bigEnvelope,2.0,{\_y:Math.floor((Math.random() \* Stage.height - Stage.height + 595)), overwrite:false, ease:Strong.easeOut});  
TweenLite.to(bigEnvelope,2.0,{\_rotation:Math.floor((Math.random() \* -180)), overwrite:false, ease:Strong.easeOut});  
}  
revealSentence();  
}

function revealSentence():Void  
{  
if (\_root.btnOver != true)  
{  
TweenLite.to(sentence2,0.55,{\_alpha:100, overwrite:false, ease:Strong.easeOut});  
TweenLite.to(sentence2,0.55,{\_alpha:0, overwrite:false, delay:frame2Duration, ease:Strong.easeOut, onComplete:revealLandingPage});  
}  
else  
{  
TweenLite.to(sentence2,0.55,{\_alpha:100, overwrite:false, ease:Strong.easeOut});  
}  
}

function revealLandingPage():Void  
{  
trace(“revealing landing page”);  
landingPage\_mc.gotoAndPlay(“play”);  
}
