我有一个标识当前级别的字符串变量,当它达到此级别时会放在时间轴中。
var currentLevel:String = "level1";
我有一个在达到等级结束时调用的调度事件。
dispatchEvent(new Event("levelend", true));
我把它放到文档类中:
function proceedLevel(event:Event):void
{
removeEventListener("levelend", proceedLevel);
SoundMixer.stopAll();
removeChild(currentLevel);
gotoAndStop(nextScene);
}
每个级别都是这样调用的:
var level1:Level1 = new Level1();
level1.x = 0;
level1.y = 0;
addChild(level1);
每个级别都在自己的Movieclip中,但是当它到达该movieclip中时间轴的末尾时,它会调度事件“levelEnd”。文档类侦听然后尝试删除调用removeChild的实例。我添加字符串currentLevel并将其放入removeChild,希望尝试从文档类中删除它。
我收到此错误:
implicit coercion of a value of type to an unrelated type flash display displayobject
我知道传递给removeChild的字符串并不高兴!
由于
答案 0 :(得分:0)
您可以在创建关卡显示对象后添加另一个变量var currentLevelView:DisplayObject
并在removeChild
中使用它,或者您可以设置level1.name = currentLevel
并将removeChild
更改为{{1 }}