Interessierte
Hallo alle zusammen,
hab' mal wieder ein Problem. Habe ein Spiel mit einer Figur und Kollisionerkennung. Ich bewege nun eine Figur mit den Pfeiltasten von rechts nach links und zurück. Das funktioniert auch.
Nun wollte ich, dass sich die Figur umdreht, wenn ich die andere Taste drücke, also von links nach rechts geht. Dies passiert öfters mitten auf der Bühne und nicht erst am Rand.
Ich dachte mir, mache das mit scaleX=-1; bzw. scaleX=1; Doch leider funktioniert das nicht korrekt. Die Figur dreht sich zwar, beginnt dann aber am Rand und wird dabei sogar noch dick.
Das AS ist in der Zeitleiste und alles spielt sich direkt auf der Bühne ab, also keine Dokumentenklasse.
Bin für jeden Tipp danbar.
hab' mal wieder ein Problem. Habe ein Spiel mit einer Figur und Kollisionerkennung. Ich bewege nun eine Figur mit den Pfeiltasten von rechts nach links und zurück. Das funktioniert auch.
Nun wollte ich, dass sich die Figur umdreht, wenn ich die andere Taste drücke, also von links nach rechts geht. Dies passiert öfters mitten auf der Bühne und nicht erst am Rand.
Ich dachte mir, mache das mit scaleX=-1; bzw. scaleX=1; Doch leider funktioniert das nicht korrekt. Die Figur dreht sich zwar, beginnt dann aber am Rand und wird dabei sogar noch dick.
Das AS ist in der Zeitleiste und alles spielt sich direkt auf der Bühne ab, also keine Dokumentenklasse.
Bin für jeden Tipp danbar.
Code:
//KEYBOARD LinksRechts
function LinksRechts (event:KeyboardEvent):void {
switch(event.keyCode )
{
case Keyboard.LEFT:
left = true;
figur_mc.play();
break;
case Keyboard.RIGHT:
right = true;
figur_mc.play();
break;
}
}
//KEYBOARD Loslassen
function Loslassen (event:KeyboardEvent):void {
switch(event.keyCode )
{
case Keyboard.LEFT:
left = false;
figur_mc.scaleX=-1;
figur_mc.gotoAndStop(1);
break;
case Keyboard.RIGHT:
right = false;
figur_mc.scaleX=1;
figur_mc.gotoAndStop(1);
break;
}
}
function Bewegung(event:Event):void {
if(right==true) {figur_mc.x += 6;}
if(left==true) {figur_mc.x -= 6;}
//Begrenzungen links
if( figur_mc.x < 5 ) {
figur_mc.x=5;
figur_mc.gotoAndStop(1);
}
//Begrenzungen rechts
if( figur_mc.x > 470 ) {
figur_mc.x=470;
figur_mc.gotoAndStop(1);
}
}