# First post - AS3 Arrow Keys not looping my walk cycle

**URL:** <https://forum.kirupa.com/t/first-post-as3-arrow-keys-not-looping-my-walk-cycle/331033>\
**Category:** flash\
**Created:** [April 30, 2013, 3:02am UTC](https://forum.kirupa.com/t/first-post-as3-arrow-keys-not-looping-my-walk-cycle/331033 "2013-04-30T03:02:32Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![MBockus](https://avatars.discourse-cdn.com/v4/letter/m/cdc98d/32.png) [@MBockus](https://forum.kirupa.com/u/MBockus)\
**Post date:** [April 30, 2013, 3:02am UTC](https://forum.kirupa.com/t/first-post-as3-arrow-keys-not-looping-my-walk-cycle/331033/1 "2013-04-30T03:02:32Z")

</div>

Hello People,  
This is my first post here. I am currently trying to make a flash based game. In my codes below line of code:  
if(RightKeyisDown)  
{  
Jason.x+=speed;  
Jason.scaleX =0.63;  
Jason.gotoAndStop(2);

The (2) frame in _movieclip_ JASON contains a walking animation, however, I believe my arrow keys are simply reapeating the events when I hold it down, so my animation never plays.

How do I get my loop to actually play? I tried putting the\* gotoAndStop\* in my \*PressAKey \*definition function, but the animation only plays once.

Thanks in advance. Sorry if this comes off as a NEWB question 😛

-------------- line of codes -----------------------  
import flash.events.KeyboardEvent;  
import flash.events.Event;

var RightKeyisDown:Boolean = false;  
var LeftKeyisDown:Boolean = false;  
var UpKeyisDown:Boolean = false;  
var DownKeyisDown:Boolean = false;

var speed: Number = 7  
var gravity: Number = 1;  
var yVelocity: Number = 0;  
var jumping: Boolean = false;

stage.addEventListener(KeyboardEvent.KEY\_DOWN, PressAKey);  
stage.addEventListener(KeyboardEvent.KEY\_UP, ReleaseAKey);

_/// Key Reactions_  
function PressAKey(event: KeyboardEvent): void  
{  
if(event.keyCode == Keyboard.RIGHT)  
{  
RightKeyisDown = true;

```
}
if(event.keyCode == Keyboard.LEFT)

```

{  
LeftKeyisDown = true;

```
}
if(event.keyCode == Keyboard.UP)

```

{  
UpKeyisDown = true;  
}  
if(event.keyCode == Keyboard.DOWN)  
{  
DownKeyisDown = true;  
}  
}  
function ReleaseAKey (event: KeyboardEvent): void  
{  
if(event.keyCode == Keyboard.RIGHT)  
{  
RightKeyisDown = false;  
}  
if(event.keyCode == Keyboard.LEFT)  
{  
LeftKeyisDown = false;  
}  
if(event.keyCode == Keyboard.UP)  
{  
UpKeyisDown = false;  
}  
if(event.keyCode == Keyboard.DOWN)  
{  
DownKeyisDown = false;  
}  
}

_/// Moving Jason_

Jason.addEventListener(Event.ENTER\_FRAME, moveJason);  
function moveJason(event:Event): void  
{  
if(RightKeyisDown)  
{  
Jason.x+=speed;  
Jason.scaleX =0.63;  
Jason.gotoAndStop(2);

}  
if(LeftKeyisDown)  
{  
Jason.x-=speed;  
Jason.scaleX =-0.63;  
Jason.gotoAndStop(2);

}  
if(DownKeyisDown)  
{  
Jason.gotoAndStop(3);  
}  
{  
if(!RightKeyisDown&&!LefyKeyisDown&&!DownKeyisDown&&!UpKeyisDown)  
Jason.gotoAndPlay(1)  
}  
if(UpKeyisDown&&jumping)  
{  
yVelocity = -15;  
jumping = false  
Jason.gotoAndStop(4);  
}  
yVelocity += gravity

```
if(!Floor.hitTestPoint(Jason.x, Jason.y, true))
{
    Jason.y+=yVelocity;
}
if(yVelocity &gt; 20)
{
    yVelocity = 20;
}
for(var i:int=0;i&lt;10;i++)
{
    if(Floor.hitTestPoint(Jason.x,Jason.y, true)) 
{
    Jason.y --;
    yVelocity = 0;
    jumping = true

```

}  
}
