0

したがって、Cosmo.hitTestObject の場合、Asteroid 5 を削除する必要がありますが、すぐに別の位置に追加したいので、ヒット テストが自動的にトリガーされません。どうすればこれを行うことができますか?

var nCount1:Number = 0;
timer_Text1.text = nCount1.toString();
addEventListener(Event.ENTER_FRAME,massCollect);

function massCollect(e:Event) {
    if (Cosmo.hitTestObject(Asteroid5)) {
        removeChild(Asteroid5);
        nCount1++;
        timer_Text1.text = nCount1.toString();
    }
    if (nCount1 == 5) {
        gotoAndStop(351, "Scene 1");
        removeEventListener(Event.ENTER_FRAME,massCollect);
    }
}
4

1 に答える 1

0

私は次のようなものに行きます:

var nCount1:Number = 0;
timer_Text1.text = nCount1.toString();
addEventListener(Event.ENTER_FRAME, massCollect);

function massCollect(e:Event) {
    if (Cosmo.hitTestObject(Asteroid5)) {
        while (Cosmo.hitTestObject(Asteroid5) {
            Asteroid5.x = Math.floor(MAX_WIDTH * Math.random());
            Asteroid5.y = Math.floor(MAX_HEIGHT * Math.random());
        }
        removeChild(Asteroid5);
        nCount1++;
        timer_Text1.text = nCount1.toString();
    }
    if (nCount1 == 5) {
        gotoAndStop(351, "Scene 1");
        removeEventListener(Event.ENTER_FRAME, massCollect);
    }
}
于 2013-03-16T05:45:02.590 に答える