今、キーボードイベントの繰り返しを止めようとしています。
私の考えは、キーが押されたときに true と false の条件を用意して、キーが既に押されている場合は繰り返さないようにすることでした。
//Mouse Event Over
keyCButton.addEventListener(MouseEvent.MOUSE_OVER, function(){gotoAndStop(2)});
//Variable
var Qkey:uint = 81;
//Key Down Event
stage.addEventListener(KeyboardEvent.KEY_DOWN, keydown);
var soundplayed = false;
function keydown(event:KeyboardEvent){
if (event.keyCode==Qkey) {
this.soundplayed=true;
}
}
if (this.soundplayed==false){
gotoAndPlay(3);
}
//Key Up Event
stage.addEventListener(KeyboardEvent.KEY_UP, keyup);
function keyup(event:KeyboardEvent){
this.soundplayed=false;
gotoAndStop(1);
}
これを行うと、キーボードイベントなしでキーループが何度も繰り返されます。「if (this.soundplayed==true)」に「&& keyDown...」を追加する必要があると思いますが、エラーを発生させずにそれを行う方法がわかりません
これは私が修正しようとしているキーボードプレーヤーですhttp://soulseekrecords.org/psysci/animation/piano.html