Zufälliges einfaden

alexanderneipp

Mitglied
Hallo allerseits,
hab folgendes Problem:
Ich hab in Flash (Version 5) 6 Ebenen mit jeweils einem Bild.
Diese sollen nun zufällig ein- und ausgefadet werden mit nem ganz simplen Alpha-Effekt.
Ich will das nicht mit Tweening machen, weil so ja immer wieder die selbe Reihenfolge auftritt. Einfach, am besten mit ActionScript ganz zufällig ein und ausfaden.

Danke schon mal!
 
Sers erstmal,
das ist weiter nicht schwer.
Als erstes erstellen wir 6 Variablen mit zufälligem Wert.


PHP:
 variable1 = random(10);
variable2 = random(10);
variable3 = random(10);
variable4 = random(10);
variable5 = random(10);
variable6 = random(10);

Das random ordnet einer Varialbe einen Wert zwischen 0 - 9, einschließlich 0 und 9.

PHP:
setProperty("mc1", _alpha, variable1);
setProperty("mc2", _alpha, variable2 * 10);
setProperty("mc3", _alpha, variable3 * 10);
setProperty("mc4", _alpha, variable4 * 10);
setProperty("mc5", _alpha, variable5 * 10);
setProperty("mc6", _alpha, variable6 * 10);

Damit gibts du den verschiedenen Ebenen Alphatöne zwischen 10 und 100. Kannst natürlcih beliebig mit den Werten rumspielen.

MfG
Killkrog
 
Oha, ich fürchte da hast du vorbeigeschossen, killkrog. ;)

a) Es ging um Fading.
b) Wie blendest du bitteschön Ebenen ein/aus?

Ich würde das eben schon mit Tweens machen, auch wenn du die Befürchtung, bzw. Meinung, hattest, dass das auf diesem Wege nicht machbar sei.

Wenn es dir wirklich am Herzen liegt, eine reine AS-Variante bei dir einzubauen, setz' ich mich dafür auch nochmal hin, aber mit Tweens ist das, denke ich, doch etwas komfortabler.

Und glaub' mir, auch da geht der Zufallsfaktor nicht verloren. :)

Geist
 
Naja die Ebenen kann mach mit AS nichr einfaden.
Aber wenn du das was auf deinen Ebenen verteilt liegt in Filmsequenzen umwandelst, diesen dann InstanzNamen vergibst geht das schon.

PHP:
onClipEvent (load) {
    setProperty(_root.mc0, _alpha, 0);
    setProperty(_root.mc1, _alpha, 0);
    setProperty(_root.mc2, _alpha, 0);
    setProperty(_root.mc3, _alpha, 0);
    setProperty(_root.mc4, _alpha, 0);
    setProperty(_root.mc5, _alpha, 0);
    i = random(6);
}
onClipEvent (enterFrame) {
    if (_root["mc"+i]<=100) {
        _root["mc"+i]._alpha += 5;
    }
}

Hab dir schnell ein kleines Bsp. gebastelt.
Bitte sehr und ich hoffe es hilft dir weiter
 

Anhänge

  • random_fade.zip
    2,4 KB · Aufrufe: 46
PHP:
if (_root["mc"+i] < 100) {
...
}
innerhalb des enterFrame-Events ist noch ein wenig genauer. :)

@alexanderneipp:
Hast du damit jetzt schonmal einen Ansatz bekommen, der dir was nützt?
Wenn nicht, dann lass nochmal was hören, dann führt man hier den Gedanken sicher auch noch ganz zu Ende. ;)

Geist
 
Em, wenn du innerhalb des enterFrame-Events deine if-Abfrage laufen lässt, dann hast du nix davon, auch bei alpha = 100 den alpha-Wert nochmal um 5 zu erhöhen.

Deswegen meinte ich, dass statt

if (_root["mc"+i] <= 100) {
...
}

eben

if (_root["mc"+i] < 100) {
...
}

etwas genauer ist, verstehst du? :)

Und während ich das hier schreibe, fällt mir auf, was wir beide da wohl noch übersehen haben. :)

Muss natürlich heißen:

if (_root["mc"+i].alpha <=100) {
...
}

Geist ;)
 
LOL
Jetzt hat er mich erwischt. :)
So was von schlampig. Nein nein
Ich geh mal in den Wald ein wenig Honig tanken.
brumbrum

:p
 
ich will ja nicht pingelig sein, aber ein unterstrich vor dem alpha wär auch nicht verkehrt...

if (_root["mc"+i]._alpha < 100) {
...
}
 

Neue Beiträge

Zurück