Hi Till, Super Vorschlag noch eine attachToDepth Methode zu benutzen. Funktioniert ohne Problem. Ich konnte zumindest keine Bugs entdecken. (: Das Problem mit der falschen Reihenfolge der Clips sehe ich auch nicht sehr problematisch. Kommt natürlich auch auf das Projekt an. Die Lösung dazu mit den Lücken füllen, ist allerdings auch nicht ganz unprobelmatisch. Wenn man beim removeMovieClip() versucht alle Lücken zu schließen, verändert man evtl. auch die Tiefe von Clips die mit attachToDepth() auf eine bestimmte Ebene attached wurden. Der User geht davon aus, dass durch seine attachToDepth Methode, die Clips auf einer bestimmten Ebene auch bleiben. OK. Er hätte die _depth Eigenschaft, die er abfragen könnte. Hier noch mal alles zusammengefasst. Habe ich was vergessen? //save original attachMovie in attachClip. MovieClip.prototype.attachClip = MovieClip.prototype.attachMovie; //store every mc and depth in depthArr. //every object that contains attached elements has its own depthArr. MovieClip.prototype.attachMovie = function(id,newname,depth) { if(typeof(this.depthsArr)!="object") { this.depthsArr = new Array(); } while(true) { if(typeof(this.depthsArr[depth])=="movieclip") { depth++; } else { break; } } this.attachClip(id,newname,depth); this.depthsArr[depth] = this[newname]; this[newname]._depth = depth; return this[newname]; } //attach to specific depth and replace existing content. MovieClip.prototype.attachToDepth = function(id,newname,depth) { this.attachClip(id,newname,depth); this.depthsArr[depth]=this[newname]; this[newname]._depth = depth; return this[newname]; } //save original removeMovieClip in removeClip. MovieClip.prototype.removeClip = MovieClip.prototype.removeMovieClip; //change depthArr when removing attached element. MovieClip.prototype.removeMovieClip = function() { delete this._parent.depthsArr[this._depth]; this.removeClip(); } trace(_root.attachMovie("ball","ball1",10)); trace(_root.attachMovie("b","b1",10)); b1._x = 40; trace(_root.attachMovie("b","b2",10)); b2._y = 0; _root.b2.removeMovieClip(); trace(_root.attachMovie("b","b2",10)); b2._y = 40; trace(_root.attachMovie("b","b3",10)); b3._x = 90; trace(_root.attachToDepth("b","b4",10)); b4._y = 70; Gruß Alex ------------------------------------------------------ Archiv : //www.freelists.org/archives/ascoders/ Optionen : //www.freelists.org/list/ascoders ------------------------------------------------------