per completare il tutto direi che come soluzione puoi anche adottare la combinazione delle 2, cosi' da non rompere mai le scatole a nessuna depth a prescindere da dove parti .
duplichi o crei usando getNextHighestDepth() e rimuovi con la proto che pero' sara' usata in combinazione con la funzione che ho postato prima.
codice:
var nextDepth:Function = function():Number {
var highestDepth:Number = new Number( getNextHighestDepth() );
if( highestDepth > 1048575 ) {
var a:Number = new Number( 0 );
while( a < 1048575 ) {
if( getInstanceAtDepth( a ) == undefined ) {
highestDepth = new Number( a );
break;
}
a++;
}
}
return highestDepth;
}
MovieClip.prototype.removeMovie = function() {
var thisDepth:Number = new Number( this.getDepth() );
if( thisDepth > 1048575 ) {
this.removeMovieClip( this.swapDepths( nextDepth() ) );
}
else {
this.removeMovieClip();
}
}