Zufallsgrafik aus Bibliothek laden

sirvival

Erfahrenes Mitglied
Hallo allerseits,

ich habe mal eine Machbarkeitsfrage zu Flash, insbesondere zu AS2.
Ich möchte mittels ActionScript ein zufälliges Bild aus der Bibliothek
auf einem zufälligen Pfad auf der Bühne von unten nach oben bewegen.

Ist so etwas mit Actionscript möglich?
 
Ist so etwas mit Actionscript möglich?
sicher:
Code:
var inLibrary = new Array("clip1", "clip2", "clip3", "clip4");

var symbol = this.attachMovie(inLibrary[int(Math.random() * inLibrary.length)], "sym", this.getNextHighestDepth());

symbol._x = Math.random() * Stage.width;
symbol._y = Stage.width;

this.onEnterFrame = function() {
    symbol._y -= 2;
    if (symbol._y < -symbol._height) delete this.onEnterFrame;
}

Gruß
.
 
Hi,
  • Du musst die Objekte in der Bibliothek auch zum Export für AS freigeben (Rechtsklick auf Symbol --> Verknüpfung --> Häkchen bei "Export für AS" und "ins erste Bild exportieren" setzen und als Bezeichner den Namen des Symbols eingeben)

  • Du kannst nicht zwei onEnterFrame-Methoden auf einer Zeitleiste notieren (in der Ebene "logo" hast Du auch eine onEnterFrame-Methode auf _root definiert)

  • Mein Fehler: Die vertikale Position des Objekts muss natürlich zuerst der Bühnenhöhe und nicht der Bühnenbreite entsprechen:
Code:
symbol._y = Stage.height;

Gruß
.
 
Wie könnte ich das Problem (2) sonst lösen?

Was ich versuche ist das Logo am Anfang auszufaden und dann bis zum Abbruch die Rechtecke in zufälliger Anzahl an beliebigen Psotionen von unten nach oben über die Bühne fliegen zu lassen.
 
Hi,

definiere eine der beiden onEnterFrame-Methoden auf einem anderen Objekt (vorzugsweise auf dem Logo, da es sich bei Deinem Symbolen um Grafiken handelt, auf denen keine onEnterFrame-Methode ausgeführt werden kann):
Code:
Logo.onEnterFrame = function() 
{
	this._alpha += (0 - this._alpha)/20;
	if (this._alpha <= 20) 
	{
		this._alpha = 20;
		delete this.onEnterFrame;  
	}
}

Tipp: Verwende einfach immer MovieClips statt Grafiken: Du hast dadurch keine Einschränkungen, sondern - im Gegenteil - viele Vorteile wie z.B. bessere Adressierbarkeit, die Möglichkeit, eigene Zeitleisten zu verwenden und mehr Handler.

Objekte vom Typ Grafik oder Schaltfläche sind Relikte aus alten Zeiten (Flash 4/5) und machen heute nur noch in den wenigsten Fällen Sinn.

Gruß
.
 
Supi! Danke für den Tipp.

Jetzt habe ich nur noch das Problem dass die Rechtecke bis zum Ende (Abbruch) des Movies laufen sollen.
 
Hi,

was ist Deine Abbruchbedingung? Die Rechtecke laufen nach meinem Vorschlag, bis sie den oberen Bühnenrand überschritten haben. Wann genau soll die Animation bei Dir beendet sein?

Gruß
.
 
Das ist richtig. Als Abbruchbedingung hatte ich mir so etwas vorgestellt. Keine Ahnung ob das so geht.

Code:
	do
	{
		symbol._y -= 30;
    	if (symbol._y < -symbol._height) delete this.onEnterFrame;
	}while(keyListener);

Also Abbruch durch einen Tastendruck.

Ich habe nochmal eine aktuelle Version online gestellt.


PS: Was ich grad noch festgestellt habe das Ding läuft nur solange wie das Tutorials Logo am ausfaden ist. Danach stoppt es. Irgendwas mache ich da noch falsch. :confused:
So wird das dann auch nix dass mehrere Rechtecke über den Bildschirm huschen.
 
Hi,

wenn Du's flexibler haben willst ...

Meinst Du es in etwa so wie im Anhang? Wenn nicht, beschreibe bitte Dein komplettes Anliegen so exakt wie möglich, da - je nach Endanforderung - ein völlig anderer Ansatz sinnvoll wäre.

Gruß
.
 

Anhänge

  • pads.zip
    8,3 KB · Aufrufe: 24

Neue Beiträge

Zurück