我正在做一個Flash Pro CS6的小應用程序,並且我使用箭頭鍵(使用代碼Sippets製作)以每幀4個像素的速度移動球。問題在於,每當我死的時候,我都會到達另一個框架,我可以重播並重試遊戲,但是這一次,球的速度是8像素/幀,並且每次我重玩遊戲時,這個數字都會不斷增加。有什麼辦法解決這個問題嗎?下面是我使用的代碼片段:AS3 - 球超速
var upPressed:Boolean = false;
var downPressed:Boolean = false;
var leftPressed:Boolean = false;
var rightPressed:Boolean = false;
ball.addEventListener(Event.ENTER_FRAME, fl_MoveInDirectionOfKey); //I think the problem might be this "Enter Frame"
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_SetKeyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, fl_UnsetKeyPressed);
function fl_MoveInDirectionOfKey(event:Event)
{
if (upPressed)
{
ball.y -= 4;
}
if (downPressed)
{
ball.y += 4;
}
if (leftPressed)
{
ball.x -= 4;
}
if (rightPressed)
{
ball.x += 4;
}
}
function fl_SetKeyPressed(event:KeyboardEvent):void
{
switch (event.keyCode)
{
case Keyboard.UP :
{
upPressed = true;
break;
};
case Keyboard.DOWN :
{
downPressed = true;
break;
};
case Keyboard.LEFT :
{
leftPressed = true;
break;
};
case Keyboard.RIGHT :
{
rightPressed = true;
break;
}
}
};
function fl_UnsetKeyPressed(event:KeyboardEvent):void
{
switch (event.keyCode)
{
case Keyboard.UP :
{
upPressed = false;
break;
};
case Keyboard.DOWN :
{
downPressed = false;
break;
};
case Keyboard.LEFT :
{
leftPressed = false;
break;
};
case Keyboard.RIGHT :
{
rightPressed = false;
break;
}
}
};
是在'ball'的MovieClip的實例名稱階段? – PanterA
是的,它是舞臺上的movieClip實例 – Zoske