Sterne rumfliegen lassen?

  • Themenstarter Themenstarter Ivan Suta
  • Beginndatum Beginndatum
I

Ivan Suta

Hi!
Ich wollte mal fragen wie man am einfachsten Sterne "natürlich" rumfliegen lassen kann...
Da ich von Flash nicht soviel Ahnung habe dachte ich mir, dass es besser ist zuerst zu fragen anstatt Stundenlang zu suchen,ich habe Flash MX2004 und Adobe Image Ready zur verfügung...(Schulversionen)
Für jede Hilfe bin ich dankbar!
 
Du könntest dir einen Stern erstellen und den dann mit AS animieren und vervielfältigen.
Hier siehst du in etwa wie du das realisieren könntest. Basierend auf der selben Idee kannst du auch deine Sterne rumfliegen lassen.
Du kannst auch mal nach Zufallszahlen (Math.random) suchen und die Sinusfunktion wird dir auch hilfreich sein. Aber in dem Tutorial stehts gut beschrieben :)
Zum Tutorial

grtz inctube
 
Also so mit Zufallszahlen und der Sinus Funtkion und so ist es eigentlich die einfachste Methode neben dem von Hand animieren.
Ist auch wirklich nicht so schwer.
Was du brauchst ist folgendes:
1. Einen Stern
2. Eine For Schleife mit der du deinen Stern vervielfätigst
3. Eine onEnterFrame Schleife in der du die Random Werte für die Sterne berechnest und deren Koordinaten aktualisiertst

Also ungefähr so:
PHP:
this.createEmptyMovieClip("container",1)
for (i=0; i<anzahlDerSterne; i++) { 
  container.attachMovie("star1", "star"+i, i+500); 
  star[i]._x=Math.random()*80+2; //Hier kannst du rumprobieren
  star[i]._y=Math.random()*24+3; //Hier kannst du rumprobieren
  star[i].spd=Math.random()*1+0.4; //Hier kannst du rumprobieren
} 
//Jetzt hast du so viel Sterne wie du willst mit zufälliger Startposition und 
//Geschwindigkeit
this.onEnterFrame=function() { 
    for (i=0; i<anzahlDerSterne; i++) { 
      star[i]._y-=star[i].spd; 
      star[i]._x+=Math.sin((star[i]._y+star[i].spd)/6)/6; //Hier kannst du rumprobieren
if(star[i]._x>FilmBreite || star[i]._x<FilmBreite || star[i]._y>FilmHöhe || star[i]._y<Filmhöhe){
resetstar(i)
         }
    }
}

//Was jetzt noch fehlen würde, wäre eine Funktion die die Sterne wenn sie aus dem 
//Film rausgeflogen sind löscht und einen neune generiert

function resetstar(nr) { 
  star[nr]._x=Math.random()*80+2; 
  star[nr]._y=Math.random()*10+20; 
  star[nr].spd=Math.random()*1+0.4; 
}
So in der Art sollte dein Script aussehen. Übrigens solltest du deinen Stern für AS freigeben. Dazu gehst du in die Bibliothek und machst einen Rechtsklick auf deinen Stern und dann unter Verknüpfung einen Hacken für die Freigae für AS setzen.

grtz inctube
 
Zurück