2

そのため、このサイトとエラー コード 1119 に関連する他のいくつかのサイトを検索しましたが、何が問題なのかを理解するのに役立つサイトはありませんでした。基本的に、互いに非常に類似している 4 つの異なるコードに対して、同じエラーが 2 回発生します。それらは、フラッシュ内のオブジェクトを特定の単位数だけ移動するために必要なコードにすぎません。すべてのコードは次のとおりです。

package
{
    import flash.display.MovieClip;
    import flash.events.Event;
    import flash.events.KeyboardEvent;

    public class Work extends MovieClip
    {
        var touching:Boolean = false;

        public function Work()
        {
            startGame();
        }
        function startGame():void
        {
            stage.addEventListener(Event.ENTER_FRAME, gameLoop);
            stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
        }
        function gameLoop(event:Event):void
        {
            checkCollisions();
        }
        function keyDownHandler(keyEvent:KeyboardEvent):void
        {
            if (keyEvent.keyCode == 40) 
            {
                flyer.y += 10; 
                }
            else if (keyEvent.keyCode == 39) {
                flyer.x += 10; 
                }
            else if (keyEvent.keyCode == 37) {
                flyer.x -= 10; 
                }
            else if (keyEvent.keyCode == 38) {
                flyer.y -= 10; 
            }
        }

        function checkCollisions()
        {
            if (flyer.hitTestObject(square))
            {
                touching = true;
            }
            else
            {
                touching = false;
            }
        }
    }
}

(最初の部分がコーディング ボックスから除外されている理由はわかりませんが、まあまあ。タブ ボタンで Web ページの選択が変更されるため、手動でインデントできませんでした)

さて、これは私にエラーを与えているコードの正確な部分です:

function keyDownHandler(keyEvent:KeyboardEvent):void {

    if (keyEvent.keyCode == 40) {
        flyer.y += 10; 
    }
    else if (keyEvent.keyCode == 39) {
        flyer.x += 10; 
    }
    else if (keyEvent.keyCode == 37) {
        flyer.x -= 10; 
    }
    else if (keyEvent.keyCode == 38) {
        flyer.y -= 10; 
    }

(繰り返しますが、私にテキスト メッセージを送ってください) さて、これらの 1 つに 1119 エラーが表示されるだけでなく、すべてのエラーが 2 回発生します! ここで、お見せしましょう:

例

この嘆願書に追加するもう 1 つのことは、エラー リストの一番下に表示される最後のエラーです。また、エラー 1061 も困惑させられます。これはhitTestObject未定義のメソッドであると書かれていますが、以前に使用したことがあるだけでなく、常に使用されていることがわかります。なぜこれらのエラーが発生するのか、なぜ 2 回ポップアップするのか、またはそれらを修正する方法が本当にわかりません。いくつかの支援をいただければ幸いです。

4

1 に答える 1

3

可能性は次のとおりです。

  • flyerシンボルのインスタンス名として定義されていません

    実例

  • flyerではないDisplayObject

  • flyerこの ActionScript コードは、別のタイムライン フレームやシンボルなど、インスタンスとは別のスコープで実行されています。
于 2013-09-20T19:36:19.487 に答える