Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-06-2005, 17:02   #1 (permalink)
cbt
nichts
 
Registriert seit: Dec 2004
Ort: Berlin
Beiträge: 25
code in OOP mit ActionScript 2 umwandeln, helft mir bitte

Hi liebe Leute,

Kann jemand mir bitte helfen, den folgenden script in OOP mit ActionScript 2 umzuwandeln:

ActionScript:
  1. //create 10 new mcs
  2. for (var j=0; j<10; j++){
  3.     this.createEmptyMovieClip("mc"+j, j);
  4.     this["mc"+j].lineStyle(5);
  5.     this["mc"+j].lineTo(0,20);
  6.     this["mc"+j]._y=30*j;
  7. }
  8.  
  9. //create a method for all new mcs
  10. MovieClip.prototype.run=function(){
  11.     var a=random(5)+5;
  12.     this.onEnterFrame=function(){
  13.         this._x+=a;
  14.     };
  15. };
  16.  
  17. //function to control, when movie starts. If i==5, refer 10 new mcs with the method run();
  18. var i:Number=0;
  19. function prepare(){
  20.     trace(i);
  21.     if(i==5){
  22.         clearInterval(intervalID);
  23.         for(var i=0; i<10; i++){
  24.             _root["mc"+i].run();
  25.         };
  26.     };
  27.     i++;
  28. };
  29.  
  30. intervalID= setInterval(prepare, 500);

Ich wäre dafür sehr dankbar

mfg,
cbt
cbt ist offline   Mit Zitat antworten
Alt 25-06-2005, 12:03   #2 (permalink)
poke
 
Registriert seit: Dec 2002
Ort: Iserlohn [NRW]
Beiträge: 2.304
ActionScript:
  1. class EinNameFuerDieKlasseBitte
  2. {
  3. private var nIntI:Number;
  4. private var nInt:Number
  5. private var mc:Movieclip;
  6.  
  7. function EinNameFuerDieKlasseBitte ( pMc:Movieclip )
  8. {
  9. this.mc = pMc;
  10.  
  11. //create 10 new mcs
  12. for ( var i:Number = 0; i < 10; j++ )
  13. {
  14. this.mc.createEmptyMovieClip( 'mc' + i, i);
  15. this.mc['mc' + i].lineStyle( 5 );
  16. this.mc['mc' + i].lineTo( 0, 20 );
  17. this.mc['mc' + i]._y = 30 * i;
  18. }
  19.  
  20. // interval
  21. this.nIntI = 0;
  22. this.nInt = setInterval( this, run, 500 );
  23. }
  24.  
  25. private function run ():Void
  26. {
  27. if ( this.nIntI >= 5 )
  28. {
  29. clearInterval( this.nInt );
  30.  
  31. for ( var i:Number = 0; i < 10; i++ )
  32. {
  33. this.mc['mc' + i].random = Math.random() * 5 + 5;
  34. this.mc['mc' + i].onEnterFrame = function()
  35. {
  36. this._x += this.random;
  37. }
  38. }
  39. }
  40. }
  41. }

ungetestet.

bitte EinNameFuerDieKlasseBitte durch einen gewünschten Namen ersetzen

aufrufen geht das ganze dann einfach über

ActionScript:
  1. var bla:EinNameFuerDieKlasseBitte = new EinNameFuerDieKlasseBitte( _root );
  2.  
  3. // oder ganz kurz und anonym
  4. new EinNameFuerDieKlasseBitte( _root );
pokepika ist offline   Mit Zitat antworten
Alt 27-06-2005, 00:08   #3 (permalink)
cbt
nichts
 
Registriert seit: Dec 2004
Ort: Berlin
Beiträge: 25
Vielen Dank @ pokepika

Ihr code ist great!
Es gibt einige Fehler, weil Sie ungetestet haben, aber das sind nur Kleinigkeiten

Ich bewundere Sie sehr!

mfg,
cbt
cbt ist offline   Mit Zitat antworten
Alt 27-06-2005, 06:19   #4 (permalink)
poke
 
Registriert seit: Dec 2002
Ort: Iserlohn [NRW]
Beiträge: 2.304
danke, aber lass das "Sie" weg ^^
pokepika ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 23:30 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele