Actionscript 3 Flash-RemoveChild操作脚本3不工作删除

Actionscript 3 Flash-RemoveChild操作脚本3不工作删除,actionscript-3,flash,Actionscript 3,Flash,我做了一个基于收集星星的游戏。我遇到了一个问题,在与4颗星会面时,4颗星希望共享传递到下一帧,并删除了所有尝试的帧removeChild(),但弹出一条消息: TypeError:错误#1009:无法访问空对象引用的属性或方法 您正在尝试操作一个不存在的对象的属性。我应该怎么做才能使代码正常工作?如果您多次使用“removeChild(b)”,则可能会触发多次。找出这一部分来检查它被删除了多少次。我认为你的问题来自这一行:if(jazda.hitTestObject(b))因为在进入第15帧后,

我做了一个基于收集星星的游戏。我遇到了一个问题,在与4颗星会面时,4颗星希望共享传递到下一帧,并删除了所有尝试的帧
removeChild()
,但弹出一条消息:

TypeError:错误#1009:无法访问空对象引用的属性或方法


您正在尝试操作一个不存在的对象的属性。我应该怎么做才能使代码正常工作?如果您多次使用“removeChild(b)”,则可能会触发多次。找出这一部分来检查它被删除了多少次。我认为你的问题来自这一行:
if(jazda.hitTestObject(b))
因为在进入第15帧后,
jazda
对象不存在,你得到了错误,也别忘了清除你的
intervalPunkty
间隔。。。
health_txt.text=health.toString()
score_txt.text=score.toString();
var health=20; 
var score=0;
var intervalPunkty = setInterval(addGwiazda,1000);

function addGwiazda()
{
    var gwiazda:Gwiazda = new Gwiazda();
    gwiazda.x = Math.ceil(Math.random() * 550);
    gwiazda.y = -50;
    addChild(gwiazda);
    gwiazda.addEventListener(Event.ENTER_FRAME, dropGwiazda);

    function dropGwiazda(e:Event)
    {
        var b:Gwiazda = Gwiazda(e.target);
        b.y += 10;
        if(b.y > 400)
        {
            b.removeEventListener(Event.ENTER_FRAME, dropGwiazda);
            removeChild(b);
        }
        if(jazda.hitTestObject(b))
        {
            score ++;
            score_txt.text = score.toString();
            b.removeEventListener(Event.ENTER_FRAME, dropGwiazda);
            removeChild(b);
            if (score == 4){
                gotoAndStop(15);
                removeChild(b);
            }
        }
    }

}

stop();
score_txt.text=score.toString();
var health=20; 
var score=0;
var intervalPunkty = setInterval(addGwiazda,1000);

function addGwiazda()
{
    var gwiazda:Gwiazda = new Gwiazda();
    gwiazda.x = Math.ceil(Math.random() * 550);
    gwiazda.y = -50;
    addChild(gwiazda);
    gwiazda.addEventListener(Event.ENTER_FRAME, dropGwiazda);

    function dropGwiazda(e:Event)
    {
        var b:Gwiazda = Gwiazda(e.target);
        b.y += 10;
        if(b.y > 400)
        {
            b.removeEventListener(Event.ENTER_FRAME, dropGwiazda);
            if(contains(b))
            {
              removeChild(b);
            }
        }
        if(jazda.hitTestObject(b))
        {
            score ++;
            score_txt.text = score.toString();
            b.removeEventListener(Event.ENTER_FRAME, dropGwiazda);
            if(contains(b))
            {
              removeChild(b);
            }
            if (score == 4){
                gotoAndStop(15);

            }
        }
    }

}

stop();`enter code here`