{lang: 'de'}
Flashhilfe.de - Flash Community

Position des Winkels eine gedrehten Movieclips abfragen [Flash 11]

 


AntwortenRegistrieren Seite1  

hlevetzow#1
Benutzerbild von hlevetzow
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
Schlagwörter: position
hlevetzow#2
Benutzerbild von hlevetzow
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
Tetenja#3
Benutzerbild von Tetenja
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.

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2024 Sebastian Wichmann - Flashhilfe.de