当一个对象从舞台上删除,然后添加到舞台上时,变量是否会在其类中重置?

时间:2014-04-18 00:58:23

标签: actionscript-3 flash

例如

    public function RedGoblin() 
    {
        this.addEventListener(Event.ADDED_TO_STAGE, onAdd)

    }

    private function onAdd(e:Event):void 
    {
        removeEventListener(Event.ADDED_TO_STAGE, onAdd);
        init();

    }

    private function init():void 
    {
        goblinLife = 4;
        trace("init");
    }

当一个实例被添加到舞台上时,它将有四个生命。

现在让我们说生命是0,这已被删除。

然后您决定将实例添加到舞台

addChild(enemy) //(is data type to RedGoblin)

所以从理论上讲,它的生命应该是4对吗?或者它会是0?

因为在我的游戏中,我认为不会将生命重新设置为4。

1 个答案:

答案 0 :(得分:2)

从舞台中删除不会破坏实例,因此当您返回舞台(使用addChild())时,旧值将保持不变。但是如果重新实例化,则初始值属于新实例。