dont use switch/case try something like:

if(lastkey==87){
   etcetc
}
if(lastkey==83){
   etcetc
}

Should work

-Pete

On Thu, Jul 16, 2009 at 5:01 PM, maltech <[email protected]> wrote:

>
> 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;
>                }
>        }
> }




-- 
___________________

Actionscript 3.0 Flash 3D Graphics Engine

HTTP://AWAY3D.COM

Reply via email to