So the question is really clear i think. if the player press a or d key the movieclip moves normal. but if player press A or D and release quickly and press then A or D the character will dash or sprint or whatever. here is the code :
function key_down(event:KeyboardEvent)
{
switch (event.keyCode)
{
case 65 :
leftKey = true;
break;
case 66 :
punchKey = true;
break;
case 87 :
upKey = true;
break;
case 68 :
rightKey = true;
break;
case 83 :
downKey = true;
break;
case 78 :
jumpKey = true;
break;
case 77 :
kickKey = true;
break;
}
}
function key_up(event:KeyboardEvent)
{
switch (event.keyCode)
{
case 65 :
leftKey = false;
num++;
if(num % 2 ==1){
canRun = true;
}
else {
canRun = false;
}
break;
case 66 :
punchKey = false;
punchButton = true;
break;
case 87 :
upKey = false;
break;
case 68 :
rightKey = false;
break;
case 83 :
downKey = false;
break;
case 78 :
jumpKey = false;
jumpButton = true;
break;
case 77 :
kickKey = false;
kickButton = true;
break;
}
}
if (leftKey || rightKey || downKey || upKey)
{
if (! isJumping && ! isPunching && ! isKicking && ! isRunning )
{
// 5.frame is the walking animation
speed = 7;
hero.gotoAndStop(5);
}
if(! isJumping && ! isPunching && ! isKicking && isRunning ){
// isRunning means that the character is Dashing
// 17.frame is the sprint animation
speed = 10;
hero.gotoAndStop(17);
}
if (leftKey)
{
hero.scaleX = -1;
speedX -= speed;
}
if (rightKey)
{
hero.scaleX = 1;
speedX += speed;
}