I have my controls doing what they need to do, however if you press
more than one key it stops moving. I was wondering if anyone has a way
to make this work better.
Here is a code snippy
this.stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDown);
this.stage.addEventListener(KeyboardEvent.KEY_UP,keyUp);
this.addEventListener(Event.ENTER_FRAME,onEnterFrame);
}
private function onEnterFrame(e:Event):void
{
if(keyIsDown){
// if the key is still pressed, just
keep on moving
switch(lastKey){
case 87
: fighter.moveForward(10); break;
case 83
: fighter.moveBackward(5); break;
case 65
: fighter.roll(2); break;
case 68
: fighter.roll(-2); break;
case Keyboard.UP :
fighter.pitch(2); break;
case Keyboard.DOWN :
fighter.pitch(-2); break;
case Keyboard.RIGHT :
fighter.yaw(2); break;
case Keyboard.LEFT :
fighter.yaw(-2); break;
}
}
ltarget.transform = fighter.transform;
ltarget.moveForward(1000);
ltarget.moveDown(100);
view.camera.transform = fighter.transform;
view.camera.pitch(10);
view.camera.moveForward(28);
view.camera.moveUp(5);
view.render();
}
private function keyDown(e:KeyboardEvent):void
{
lastKey = e.keyCode;
keyIsDown = true;
}
private function keyUp(e:KeyboardEvent):void
{
keyIsDown = false;
}
}
}