まず、質問をお読みいただき、ありがとうございました。それで、私は小さなフラッシュゲーム(実際にはゲームとは言えません)を作成しました。とにかく、ある時点で、2つのオブジェクトが互いにぶつかるかどうかをチェックしています。要約すると、ここにコードがあります
public function loop(e:Event):void
{
y += vx;
if(y > stageRef.stageHeight || y < 0)
removeSelf();
if(hitTestObject(target.hit))
{
removeSelf();
stageRef.dispatchEvent(new GameOverEvent(GameOverEvent.DEAD)); // <--
stageRef.addChild(new SmallImplosion(stageRef, x, y));
}
}
したがって、それらが衝突すると、1つのオブジェクトがイベントをディスパッチし、コードに問題はなく、機能しますが、この方法で処理するのが良いかどうかを知りたいと思います。stageRefはstageへの参照であり、両方のクラスにあります。
そして、他のクラスがそのイベントをキャッチし、次のような関数をトリガーします。
stageRef.addEventListener(GameOverEvent.DEAD, takeHit, false, 0, true);
問題は、これはそれを処理するための良い方法ですか?前もって感謝します!