Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-07-2003, 17:16   #1 (permalink)
aus dem FF
 
Registriert seit: Jun 2001
Ort: Munich
Beiträge: 1.306
Arrow Randomscript endlos...

aloa,

ich hab hier im forum dieses script ausgegraben. wie mach ich dieses script endlos? bisjetzt läuft einmal durch und gut ist.

ActionScript:
  1. var anzahl = 13;
  2. var index = "mc";
  3. //array erstellen
  4. var tmp = [];
  5. //zahlenreihe von 1-20 initialisieren
  6. //später entferne ich eine zahl nach der anderen aus dem array
  7. //somit kommt keine zahl 2x vor
  8. for (var i = 0; i<anzahl; i++) {
  9.     tmp.push(i+1);
  10. }
  11. for (var i = 0; i<anzahl; i++) {
  12.     //ich erstell ne nummer zwischen 0 und der länge des arrays
  13.     nr = random(tmp.length);
  14.     //splice entfernt nen element aus nem array und leifert es gleichzeitig zurück
  15.     //in dem fall an id
  16.     id = tmp.splice(nr, 1).toString();
  17.     //intv funktion
  18.     f = function (p, id) {
  19.         trace(index+id);
  20.         _root[p.index+id].gotoAndPlay(2);
  21.         clearInterval(p["intv"+id]);
  22.         delete p["intv"+id];
  23.     };
  24.     dur = i*500;
  25.     //deine werte für die ms
  26.     //intervall Referenz,damit mans löschen kann
  27.     this["intv"+id] = setInterval(f, dur, this, id);
  28. }
mfg
pixel
__________________
Erfolg hat nur der, der etwas tut während er auf den Erfolg wartet.

Nicht klicken!
piXeLfanatiker ist offline   Mit Zitat antworten
Alt 22-07-2003, 18:40   #2 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
leg's in eine funktion, die sich bei "fertig" selber wieder aufruft.

grz
warrantmaster ist offline   Mit Zitat antworten
Alt 22-07-2003, 18:43   #3 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Wenn in der Funktion f die id == anzahl ist, dann hast du alle Intervalle abgearbeitet und müsstest mit der ersten for-Schleife wieder beginnen.

mfg r.
bokel ist offline   Mit Zitat antworten
Alt 23-07-2003, 07:45   #4 (permalink)
aus dem FF
 
Registriert seit: Jun 2001
Ort: Munich
Beiträge: 1.306
@ warrantmaster: hab ich mal so gemacht. die function läuft auch nur wird diese zeile (_root[p.index+id].gotoAndPlay(2) nun nicht mehr ausgeführt.

@ bokel. leicht gesagt *g*. von basic kenne ich noch den befehl goto Zeilennummer, aber wie sag ich das flash das er mit der ersten for- schleife wieder anfängt?

sorry, ich steh grad voll aufm schlauch.
__________________
Erfolg hat nur der, der etwas tut während er auf den Erfolg wartet.

Nicht klicken!
piXeLfanatiker ist offline   Mit Zitat antworten
Alt 24-07-2003, 20:30   #5 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
ActionScript:
  1. endlos=function(timeout,anzahl,ref){
  2. var tmp=[]
  3. var index = "mc";
  4. for (var i = 0; i<anzahl; i++) {
  5.         tmp.push(i+1);
  6. }
  7. trace("neuer durchlauf")
  8. for (var i = 0; i<anzahl; i++) {
  9.         nr = random(tmp.length);
  10.         id = tmp.splice(nr, 1).toString();
  11.         f = function (p, id) {
  12.                trace(index+id);
  13.                 _root[p.index+id].gotoAndPlay(2);
  14.                 clearInterval(p["intv"+id]);
  15.                 delete p["intv"+id];
  16.         };
  17.         //trace("i"+Math.round(timeout/anzahl))
  18.         var dur = Math.round(timeout/anzahl)*i
  19.         ref["intv"+id] = setInterval(f, dur, ref, id);
  20. }
  21. }
  22. timeout=10000
  23. anzahl=13
  24. //erster aufruf um anfangstimeout v setInterval zu überbrücken
  25. endlos(timeout,anzahl,this)
  26. setInterval(endlos,timeout,timeout,anzahl,this)

grüße
deluxe
Deluxe 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:01 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele