package
{
import flash.display.MovieClip;
import flash.events.Event;
import flash.ui.Keyboard;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
public class supportForce extends MovieClip
{
public function supportForce()
{
stage.addEventListener(KeyboardEvent.KEY_DOWN, onDown);
stage.addEventListener(KeyboardEvent.KEY_UP, onUp);
stage.addEventListener(Event.ENTER_FRAME, keyCheck);
}
private function onUp(e:KeyboardEvent):void
{
_keyDownStatus[e.keyCode] = false;
}
private function onDown(e:KeyboardEvent):void
{
_keyDownStatus[e.keyCode] = true;
}
private function keyCheck(event:Event)
{
if (_keyDownStatus[90])
{
var GreenLight:Projectile1 = new Projectile1();
stage.addChild(GreenLight);
GreenLight.x = Player2Child.x;
GreenLight.y = Player2Child.y;
}
GreenLight.x -= defaultSpeed;
}
}
}
因此,這裏的投射物是Projectile1,它在keyCheck函數中聲明爲GreenLight。因此,在相同的功能(ENTER.FRAME功能)中,GreenLight應該移動到左邊。這不會發生,並且還有一個錯誤,指出TypeError:錯誤#1009:無法訪問空對象引用的屬性或方法。出現supportForce/keyCheck()時出現 。先謝謝你。投射物不移動,因爲它們應該是
它可以工作,但我只能啓動一個GreenLight,之後什麼都不顯示。 – InfiniteParadox 2014-10-11 11:26:09
@Dust你是說當mousedown時每個框架上都會出現一個新的Projectile1? – Pan 2014-10-11 11:38:02
不好意思提前它,但是。我的錯。 – InfiniteParadox 2014-10-11 11:44:18