zufällige Multi-Slideshow

rAvEnXXL

Mitglied
Hallo,

Ich will in einem Header / Banner (weiss nicht wie ihr dazu sagt) kleine bilder an vorher festgelegten Postitionen zu zufälligen Zeiten in zufälliger Reihenfolge ein bzw. wieder ausblenden lassen.
Ich habe dazu in diesem Forum einen Thread gelesen, nach dessen Anleitung ich vorgegangen bin. Hies "Zufällige Slideshow" oder so ähnlich, aber ich finde diesen nicht mehr, sonst würde ich natürlich den Link hier posten :(

Nun zum Problem: Das Bilder ein/ausfaden funktioniert gut, wenn immer nur auf einer Stelle gefadet wird. Ich habe die Animation in der das Script jeweils ausgeführt wird "photomc1" genannt. Da ich diese Animation aber 10 mal brauche wäre es extrem viel arbeit alle einzeln zu machen. Desshalb habe ich meine "photomc1" einfach dupliziert und verschoben.
Wenn ich die Animation abspiele funktioniert aber nur eine der beiden Animationen so wie geplant. Die andere bleibt einfach nach dem ersten Bild stehen.
Der Fehler liegt nun darin, dass beide Animationen ("photomc1/2") die selben Unteranimationen verwenden "PhotoX", in der im Script aber photomc1 verwendet wird. Ändere ich dieses AS in zb. photomc1 ab so ändert es sich natürlich auch in photomc2.


Eine Lösung wäre, die Nummer in "photomc" als Variable einzufügen. Aber wie wäre das zu realisieren? (Ich müsste diese Variable ja dann aus einer untern "Schicht" in die Animation "photoX" übergeben...)

Habt Ihr andere Lösungswege?


PS: Ich habe die swf und fla Dateien angehängt, sonst versteht man warschenlich nicht ganz was ich meine... :(
PS2: Version ist übrigens MX
 

Anhänge

  • slideshow.zip
    113,5 KB · Aufrufe: 55
Zuletzt bearbeitet:
Die Struktur ist ja so:
shot.gif

und in photoX ist folgender Code:
Beim Startframe des Movieclips:
Code:
gotoAndPlay(int(random(180)+20));
Beim Endframe des Clips:
Code:
_root.photomc12.gotoAndPlay(int(random(5))+1); stop();
Da es jetzt ja in jedem Clip photoX auf photomc12 gehen will geht das nicht.
Das AS müsste also heißen:
Code:
_root.photomc'i'.gotoAndPlay(int(random(5))+1); stop();
und "i" müsste aus "photomcX" übergeben werden. Aber wie?

Mir ist grad noch was eingefallen: Man kann natürlich den Pfad auch relativ und nicht absolut schreiben. Aber wie geht denn das dann?
 
Zuletzt bearbeitet:
Hi,

ich muss gestehen, ich habe mir die Dateien noch nicht angesehen, aber zum Thema >relative Adressierung<:

Wenn die besagte Anweisung (_root.movieclip12.gotoAndPlay...) in dem jeweiligen Clip steht, kann mit this.gotoAndPlay() die aktive Instanz und mit _parent.gotoAndPlay() die übergeordnete Instanz angesprochen werden.

Man kann _parent auch wunderbar schachteln: _parent._parent.clip_name1.sub_clip1.gotoAndPlay(). Damit spreche ich einen UnterClip an, der sich in einem Clip befindet, der zwei Ebenen über dem aktuellen Clip steht... (klar, oder?:) )

Außerdem lassen sich zur individuellen Adressierung Instanznamen in Arrays ablegen:
Code:
mein_clip = new Array(21);
for (i=1; i<=21; i++) {
     mein_clip[i] = new MovieClip;
}
mein_clip[1] = orig_clip1;
mein_clip[2] = orig_clip2;
...
...
mein_clip[21] = orig_clip21;
Ist am Anfang (bei großer Clipanzahl) etwas umstädlich, aber dann kann ich meine Clips bequem über den Index adressieren:
Code:
mein_clip[zahl].gotoAndPlay(15);
d.a.t.i.c.
 
Zurück