Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 26-08-2003, 19:25   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2002
Beiträge: 71
Duplizieren per shuffle

Hi Ich habe ein script erstellt welches 10 MC untereinander dupilizieren und zwar nicht aufeinmal sonder per zufall also erst
1,5,8,5,6,7,9,10(zufällig) nicht wie normal alle auf einmal.
Aber irgendwie hab ich nen Denkfehler in der forschleife irgendwie mit den Pfaden oder so. ich kanns net finden. ilft mir mal jemand? Ich habe F5

ActionScript:
  1. function makeArray(nr) {
  2.     var nr_ary = new Array();
  3.     while(nr--) nr_ary.push(nr+1);   
  4.     return nr_ary;
  5. }
  6.  
  7. function rand() {
  8.     return random(3)-1;
  9. }
  10.  
  11. function shuffleShift(str) {
  12.     return str.sort(rand).shift();
  13. }
  14.  
  15. // Array von 0 bis nr erstellen (hier im Beispiel 10)
  16. ary = makeArray(10);
  17.  
  18. // Array Ausgabe. So wie in deiner Schleife
  19. for (i=Number(numLDup); i<=Number(numDup); i++) {
  20. duplicateMovieClip (dummy, mc+i, i+10);
  21.     this[mc+i].swapDepths(shuffleShift(ary))
  22.         setProperty (mc+i, _x, xpos);
  23.         setProperty (mc+i, _y, ypos);
  24.         setProperty (mc+i, _alpha, 100);
  25.         set (mc+i+".Topic", topicName);
  26.         set (mc+i+".numReplys", topicReplys);
  27.         set (mc+i+".File", fileNameTemp);
  28.         set (mc+i+".Created", startedTemp);
  29.         set (mc+i+".Last", lastTemp);
  30.         set (mc+i+".startedBy", startedByTemp);
  31.         ypos = ypos+40;
  32.     }

Danke erstmal Marco
DerBauer1234 ist offline   Mit Zitat antworten
Alt 26-08-2003, 22:27   #2 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
"" um dein wort mc machen ! sonst erkennt es flash als variable

ActionScript:
  1. for (i=Number(numLDup); i<=Number(numDup); i++) {
  2.         duplicateMovieClip ("dummy","mc"+i, i+10);
  3.         this["mc"+i].swapDepths(shuffleShift(ary))
  4. this["mc"+i]._x = xpos;
  5. this["mc"+i]._y = ypos;
  6. this["mc"+i]._alpha = 100;
  7. this["mc"+i].Topic = topicName;
  8. this["mc"+i].numReplys = topicReplys;
  9. this["mc"+i].File = fileNameTemp;
  10. this["mc"+i].Created = startedTemp;
  11. this["mc"+i].Last = lastTemp;
  12. this["mc"+i].startedBy = startedByTemp;
  13. ypos = ypos+40;
  14. }

mfg geo
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ ist offline   Mit Zitat antworten
Alt 27-08-2003, 18:57   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2002
Beiträge: 71
Duplizieren MC

Hi Geo!

Danke für deine schnelle Antwort. Also die 10 MC werden jetzt schon
mal untereinander dupliziert. Aber irgendwie greift die shuffle funktion nicht das duplizieren erfolgt alle 10 aufeinmal nicht wie es sein sollte ,dass die 10 durcheinander dupliziert werden. also wie oben beschreiben. Kannst du mir nen Tip noch geben. Ich denke in der for Schleife ist das Problem ?

Danke Sky
DerBauer1234 ist offline   Mit Zitat antworten
Alt 27-08-2003, 21:16   #4 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
ActionScript:
  1. ary=[1,2,3,4,5,6,7,8,9,10];
  2. ary=ary.sort(function(){return Boolean(random(2))});
  3. for (a=0; a<ary.length; a++) {
  4. i=ary[a];
  5.         duplicateMovieClip ("dummy","mc"+i, i+10);
  6.         this["mc"+i].swapDepths(shuffleShift(ary))
  7.         this["mc"+i]._x = xpos;
  8.         this["mc"+i]._y = ypos;
  9.         this["mc"+i]._alpha = 100;
  10.         this["mc"+i].Topic = topicName;
  11.         this["mc"+i].numReplys = topicReplys;
  12.         this["mc"+i].File = fileNameTemp;
  13.         this["mc"+i].Created = startedTemp;
  14.         this["mc"+i].Last = lastTemp;
  15.         this["mc"+i].startedBy = startedByTemp;
  16.         ypos = ypos+40;
  17. }

sollte hinhaun mfg geo
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ ist offline   Mit Zitat antworten
Alt 28-08-2003, 17:17   #5 (permalink)
Neuer User
 
Registriert seit: Sep 2002
Beiträge: 71
MC Duplizieren

Hi Geo ! Ich nochmal danke für die Arbeit die du dir machst.
Ich denke aber du hast mich bissl falsch verstanden. Dein Script dupliziert die MC durcheinander also sozusagen gemicht. aber Sie erscheinen trotzdem alle auf einen Schlag und genau das möchte ich nicht. Ich möächte wenn Sie auf der Arbeitsfläsche erscheinen ganz leicht zeitverzögert erscheinen also nicht alle 10 aufeinmal.

Also zB. zuerst MC 10 dann ne millisekunde später 4 dann ne milisekunde später MC 7 usw. bis alle 10 dastehen das ganze soll keine Minute dauern nur 1 bis 2 sekunden bis alle 10 da sind aber nicht alle auf einen Schlag. Verstehst du mich.

Danke nochmal Sky?
DerBauer1234 ist offline   Mit Zitat antworten
Alt 01-09-2003, 12:33   #6 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
ActionScript:
  1. onClipEvent(load){
  2. ary=[1,2,3,4,5,6,7,8,9,10];
  3. ary=ary.sort(function(){return Boolean(random(2))});
  4. a=0;
  5. sttime = getTimer();
  6. }
  7.  
  8. onClipEvent(enterFrame){
  9. if(a<ary.length && getTimer() - sttime > 1000){// eine sekunde
  10. sttime = getTimer();
  11.         i=ary[a];
  12.         duplicateMovieClip ("dummy","mc"+i, i+10);
  13.         this["mc"+i].swapDepths(shuffleShift(ary))
  14.         this["mc"+i]._x = xpos;
  15.         this["mc"+i]._y = ypos;
  16.         this["mc"+i]._alpha = 100;
  17.         this["mc"+i].Topic = topicName;
  18.         this["mc"+i].numReplys = topicReplys;
  19.         this["mc"+i].File = fileNameTemp;
  20.         this["mc"+i].Created = startedTemp;
  21.         this["mc"+i].Last = lastTemp;
  22.         this["mc"+i].startedBy = startedByTemp;
  23.         ypos = ypos+40;
  24. a++;
  25. }
  26. }
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ 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 04:53 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele