[MX] Bewegen von MovieClips

alma

Erfahrenes Mitglied
Hallo Zusammen

Ich habe wieder einmal ein kleines Problem. Ich möchte gerne mehrere MovieClips per AS bewegen.

Ich habe es geschafft, dass ich den ersten MC bewegen kann, jedoch bringe ich es einfach nicht fertig, einen zweiten MC zu bewegen, welcher jedoch erst 3 Sekunden nach dem ersten startet.

Hier ist einmal mein Code bis jetzt:

PHP:
cpu.onEnterFrame=function(){
    this._x+=5;
}
Kann mir hier jemand helfen?

Danke Alma
 
Hi Alma,

wenn du auf einem frame arbeitest zB so : (code auf timeline)
PHP:
stop();
StartX = _root.cpu._x;
this.onEnterFrame = function(){
_root.cpu._x = _root.cpu._x++;
if ((_root.cpu._x - StartX) >=5){
_root.zweiterMC._X = _root.zweiterMC._x++
};
}

...ist allerdings nur ein Anfang, ich glaub ich hab dir schon mal gesagt, das es bei solchen Fragen besser ist, das Beispiel, die FLA oder zumindest den Codeschnipsel mit Angaben zu seiner Umgebung zu posten, da Flash nun einmal viele Wege nach Rom kennt, und es für mich jetzt zB deprimierend wäre, wenn du zB mit mehreren Bildern auf der Timeline operieren würdest, oder, oder ,oder...

B
 
Hallo Basileus

Wie du gewünscht hast, hänge ich nun hier meine .fla rein. Wie du gleich siehst, möchte ich nur mit einem Bild arbeiten.

Wie kann ich nun hier den Buchstaben "A" 3 Sekunden später senkrecht über das Dokument laufen lassen?

Und wie kann ich nach 20 Sekunden wieder den Buchstaben "H" durchlaufen lassen? Diesmal jedoch von unten nach oben...

Danke
 

Anhänge

  • mc1.zip
    2,2 KB · Aufrufe: 30
Hi Alma,
wie ich sehe, bist da ja fleissig, trotzdem:
vergiss das erstmal mit den sekunden, weil eine exakte Zeitprogrammierung ist in Flash nicht so ohne ( siehe setInterval in der Flash Hilfe, und die Workarounds von Flashstar.de / Madokan zu dem Thema)...aber wenn du mal überlegst was du eigentlich willst, wirst du denke ich feststellen: Ich will gar nicht genau bestimmen zu welchem Zeitpunkt in Millisekunden was passiert, ich will vielmehr, das wenn der eine MC an dem und dem Punkt ist, das und das passiert.

Wenn du folgendes Script nach diesen Massgaben änderst, dann dürftest du eigentlich zum Ziel kommen:


PHP:
cpu.onEnterFrame = function() {
	if ((_root.fan._y<350) && (this._x<550)) {
		this._x += 17;
	}
	if ((this._x>550) && (_root.fan._y<350)) {
		_root.fan._y += 17;
	}
	if ((_root.fan._y>350) && (this._x>0)) {
		this._x -= 17;
	}
};
(Setze das Script auf das erste Frame, wie in deinem Beispiel...)

sonnige Grüsse
B
 
Zuletzt bearbeitet:
Hallo Basileus

Vielen Dank für dein Script. Es funktioniert auch blendend. Jetzt wollte ich dich noch fragen, ob man die MovieClips auch wieder an einer bestimmten Stelle anhalten kann.

Ich bin mir fast sicher, dass dies funktioniert, weiss aber nicht wie, könntest du mir nicht auch noch den Code liefern?

Nehmen wir an, es handelt sich um diesen Code:

PHP:
cpu.onEnterFrame = function() {
    if ((_root.fan._y<350) && (this._x<550)) {
        this._x += 17;
    }
    if ((this._x>550) && (_root.fan._y<350)) {
        _root.fan._y += 17;
    }
    if ((_root.fan._y>350) && (this._x>0)) {
        this._x -= 17;
    }
};
Vielen Dank

Alma


Tutz, Tutz, the sound of the future...
 
Hi Alma,

ich hab momentan ein bisschen viel zu tun, aber wenn du dir das script einmal anschaust, dann siehst du ja, das es eben genau das macht, was du beschreibst, es hält die mcs an bestimmten Stellen an (in diesem Fall ausserhalb der Bühne), macht dann etwas anderes, und wenn diese Bedingung erfüllt ist, dann macht es wieder etwas mit dem ersten MC, diese Abfolge könntest du noch viel weiter ausbauen, evtl. mit der Einführung einer dritten Bedingung {(X)&&(Y)&&(Z)}, die du in die if Abfrage einbaust, du könntest zB ein einfache Variable setzen , wenn dein Fall eingetreten ist, und erst wenn dann alle drei Bedingungen stimmen geht es weiter im Code...

so, ich hoffe dir geholfen zu haben, wenn nicht schreib noch mal, ich kann abner erst morgen oder auch erst übermorgen weiterhelfen, da mein computer zur Zeit Internetpause hat, da ich auf Klausur in der kleinen süssen Finca in Fuste de Calite bin...
 

Neue Beiträge

Zurück