У меня есть мувиклип, который может двигаться вверх, вниз, влево и вправо.Если мувиклип попадает в стену, МС отскакивает и не должен проходить мимо стены - но если вы продолжаете нажимать клавишу со стрелкой вверх, вниз, влево или вправо и не отпускаете - мувиклип пройдетстена.Я пытаюсь найти способ остановить это. звено движения
// function hitWall --------------------------------------------------------------
function hitWall(event:Event):void {
if (box.hitTestObject(wall)) {
box.y+=6;
} else if (box.hitTestObject(wall2)) {
box.y-=6;
} else if (box.hitTestObject(wall3)) {
box.x+=6;
} else if (box.hitTestObject(wall4)) {
box.x-=6;
}
}
// function keyDownEvent ------------------------------------------------------------
function keyDownEvent(event:KeyboardEvent):void {
switch (event.keyCode) {
case Keyboard.UP:
keyUpward = true;
keyDownward = false;
break;
case Keyboard.DOWN:
keyDownward = true;
keyUpward = false;
break;
case Keyboard.LEFT:
keyLeft = true;
keyRight = false;
break;
case Keyboard.RIGHT:
keyRight = true;
keyLeft = false;
break;
}
}
// function keyUpEvent ------------------------------------------------------------
function keyUpEvent(event:KeyboardEvent):void {
switch (event.keyCode) {
case Keyboard.UP:
keyUpward = false;
break;
case Keyboard.DOWN:
keyDownward = false;
break;
case Keyboard.LEFT:
keyLeft = false;
break;
case Keyboard.RIGHT:
keyRight = false;
break;
}
}
// function frameloop ------------------------------------------------------------
function frameloop(event:Event):void {
if (keyUpward) {
forwardMove -=2;
}
if (keyDownward) {
forwardMove += 2;
}
if (keyLeft) {
sideMove -= 2;
}
if (keyRight) {
sideMove += 2;
}
forwardMove +=(0-forwardMove)/inertia;
sideMove +=(0-sideMove)/inertia;
box.y+=forwardMove;
box.x+=sideMove;
}