Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-10-2003, 15:52   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2003
Beiträge: 76
random tweening

ich hab ein array mit sieben elementen.
ich moechte jetzt jedes element einem dynamisch generierten textfeld zuweisen.
diese textfeld soll ein movieclip sein, der von links nach rechts ueber die buehne tweent. wenn ein tweening beendet ist, moechte ich per random ein neues element aus dem array dem textfeld zuweisen und dann damit das tweening wiederholen.(usw.)
kann mir da jemand auf die spruenge helfen?

maik
maikdyke ist offline   Mit Zitat antworten
Alt 27-10-2003, 21:32   #2 (permalink)
Neuer User
 
Benutzerbild von virtualize
 
Registriert seit: Aug 2003
Ort: Zürich
Beiträge: 120
yep. um mehr kontrolle über die animation zu haben solltes du dir einen mc mit textfeld drin bauen und auf der bühne plazieren (natürlich kannst du dir den mc und das textfeld in drin auch via script erstellen lassen, aber dann musste ihn auch via script animieren, was nich immer hübsch wird, aber durchaus funktioniert)

dann die textfelder in den mc's (ich geh mal davon aus, dass die mc1 bis mc7 heissen) füllen
ActionScript:
  1. for (i=0; i<testArray.length; i++) {
  2.         this["mc_"+i].dynTextField.text = testArray[i];
  3.  
  4.     }
starten sollte die ani dann schon von allein.
wenn das letzte schlüsselbild der animation erreicht ist rufst du einfach ein funktion auf die die textfelder neu bestückt. stoppen und starten brauchst du die animation ja nicht weil du eh willst, dass die wieder von vorn anfängt.
die funktion könnte so aussehen:
ActionScript:
  1. function mixTextFields() {
  2.     for (i=0; i<testArray.length; i++) {
  3.         testArray.mix();
  4.         this["mc_"+i].dynTextField.text = testArray[i];
  5.     }
  6. }
diese enthält eine kleine feine array-mix-inhalte-function, die madokan mal geschrieben hat. um die zu verwenden müsstest du noch folgenden code in (am besten das erste frame) deinen film packen:
ActionScript:
  1. Array.prototype.mix = function() {
  2. var anzahl = this.length;
  3. for (var i = 0; i < anzahl; i++) {
  4.     var zNum = Math.floor(Math.random() * anzahl);
  5.     var temp = this[i];
  6.     this[i] = this[zNum];
  7.     this[zNum] = temp;
  8. }

das sollte, denk ich, erstmal reichen.
kann man natürlich noch ewig aufbohren...
virtualize 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 06:00 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele