キーイベントは適材適所で選ぶ彼
特定のキーが押されたときにイベントを起こす、要は「右矢印押されたらムビークリップを右へ、左矢印なら左へ動かす」ってぇのに、最初はkeyListenerを使いました。
//--keyListenerを定義して、キーのUpDownをキャプチャーする var mykeyListener = new Object(); mykeyListener.onKeyDown = function() { switch (Key.getCode()) { case 39: //trace("→"); fn_Move("R"); break; case 37: //trace("←"); fn_Move("L"); break; } }; Key.addListener(mykeyListener); // //--左右に動かすfunction function fn_Move(LR) { // switch (LR) { case "L"://左に動く MC._x -= 20; break; case "R"://右に動く MC._x += 20; break; } }
動くには動くんですが、キーを押しっぱなしにしても動きがニブい。functionの中で条件分岐というのも色気がないのでDelegateを使おうとも思いましたが、使い方がワカラナイ。仕方がないんで動かすMC自体に
onClipEvent (enterFrame) { if ( Key.isDown(39)) { this._x += 10; } else if ( Key.isDown(37)) { this._x -= 10; } }
と書いたら、動きは速いしオブジェクト指向的にも好ましい、というコトになりました。手法はダサくっても適材適所、というお話でございます。