Is there a way to detect when any particular movieclip appears on the stage’s timeline in AS2?
Attempt #1: The MovieClip.prototype.onEnterFrame hack
All Movieclips have an Enterframe event. I set it to attempt to delete itself within the function so it runs once. Unforunately, this isn’t possible (delete this.onEnterFrame) doesn’t work, unless we delete the prototype.onEnterFrame dierctly as well. Of course, we can set the enterFrame to null, but enterframe will still be called despite it being nulled. So, what are the performance hits as a result of this?
Is there a way to flush away the MovieClip.prototype.onEnterFrame (by deleting it: deleting MovieClip.prototype.onEnterFrame), and then re-declaring it again “MovieClip.prototype.onEnterFrame=someFunc”, so that layter clips that appear on-stage can be initialised accordingly with the enterframe “frame1” function? Yes, but redeclaring the function again would also apply the same enterframe event to the previous clips on the stage which had alraedy been initialised, which would waste more cpu cycles. Unforatunelay, it seems the Prototype thingy affects all instances on the stage, not the constructor itself upon initialisation. So, doing MovieClip.prototype.onEnterFrame=something, will cause all Movieclips on the stage to have that event, which is going to suck!!!
Could i hack the MovieClip cosntructor and create a totoally new one? But i think all these are hardcoded alraedy.
I want the function to run only upon instantiation of the MovieClip when it appears on the Stage’s timeline. HOW TO DO THIS???