Position des Winkels eine gedrehten Movieclips abfragen [Flash 11]
| Beiträge: 2 Registriert: Nov 2014
| 09.12.2014, 11:47
Hallo,
ich lassen ein Movieclip über ein Bewegungstween drehen. Diese Tween wird in der Zeitleiste des Symbols durchgeführt und ständig wiederholt (am Ende wird wieder nach vorn gesprungen).
Dadurch dreht sich in der Szene 1 das Symbol dauerhaft.
Ich möchte nun in der Szene 1 die Stellung abfragen (wann ist der Winkel=0), um dadurch eine weitere Aktion zu starten.
Gibt es dafür einen Befehl.
mfg und Danke im Voraus
Holger | | | Beiträge: 2 Registriert: Nov 2014
Themenautor/in
| 09.12.2014, 14:59
ich hab da noch eine Idee: 0° sind immer im Frame 48 der Symbol-Zeitleiste (danach springt die Abarbeitung wieder zu Frame2)
Es müsste doch auch reichen, die Framenummer der Symbolzeitleiste abzufragen und in Szene 1 zu verarbeiten. (Bin leider noch am Anfang meiner Flash-Karriere :-)
Kommt man damit weiter?
Danke
Holger | | | Beiträge: 69 Registriert: Apr 2013
| 18.12.2014, 00:44
Hallo
Ich kann dir nur raten nicht alles auf der Zeitleiste zu machen, das hat viele Nachteile und ist schnell unübersichtlich.Du kannst nur mit 4 Zeilen dein MC zum Drehen bringen, dazu musst du deinem MC nur einen Namen geben, ich hab meinen mal Balken_mc genannt.
ActionScript:1 2 3 4 5 6 7 8 | import flash.events.Event;
this.addEventListener(Event.ENTER_FRAME, Test);
function Test(evt:Event)
{
Balken_mc.rotation++
}
|
Mit import wird das flash.events.Event importiert.
this.addEventListener(Event.ENTER_FRAME, Test); ruft die Funktion Test auf, die kann auch anders heißen.
Balken_mc.rotation++ lässt mein Balken immer +1 rotieren.
Und die {}begrenzen die Funktion.
Das Problem ist das Flash nur bis +180° rechnet und dann wieder – rechnet.
Also sind 90° +90 aber 270° -90 und 0°so wie 360° immer 0.
Da kommen dann Variablen ins Spiel, so was wie a = 0.
Aus Balken_mc.rotation++ wird dann Balken_mc.rotation = a; und mit a ++ erhöht man den wert um +1.
Jetzt kann man a abfragen und wenn a 360 ist, hat sich der MC ein mal gedreht.
ActionScript:1 2 3 4 5 6 7 8 9 | import flash.events.Event;
var a = 0;
this.addEventListener(Event.ENTER_FRAME, Test);
function Test(evt:Event)
{
a++;
Balken_mc.rotation = a;
}
|
Es hängt nun davon ab was dann danach passieren soll, soll sich der Balken weiter drehen oder stoppen , oder verschwinden, bewegen ?
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 | import flash.events.Event;
var a = 0;
var b = 0;
this.addEventListener(Event.ENTER_FRAME, Test);
function Test(evt:Event)
{
Balken_mc.rotation = a;
if(a==360){b = 2}
if(a==0) {b = 1}
if(b == 1){a++}
if(b == 2){a--}
}
|
Dieses kleine Beispiel dreht mein MC eine Runde vor und dann wieder zurück und Variable a wird bis 360 hochgezählt und dann wieder auf 0 runtergezählt. | |
| Ähnliche Beiträge zum Thema | 28.07.2022 - TateBauch 13.09.2022 - Rennier |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News
Regeln & Bedingungen
|