2

我的“enterFrameHandler*”函数中有一个函数,它的结构如下:

private function addBoss():void{
   if(kills >= 3){
     trace("boss time");
   }
}

由于“addBoss”是我的 ENTER_FRAME 事件侦听器函数的一部分,因此一旦杀戮达到 3,“boss 时间”就会被无限跟踪。我希望这个函数在它激活 1 次后立即停止。

是否有另一个我可以使用的事件侦听器来检查该功能,但一旦它关闭就停止?

任何建议,将不胜感激。谢谢!

4

2 回答 2

6
private function addBoss():void{
    if(kills >= 3){
       trace("boss time");
       removeBossEnterFrame();
   }
}
private function removeBossEnterFrame():void{
    removeEventListener(Event.ENTER_FRAME, addBoss);
}

一旦您追踪“老板时间”,我可能会删除调用 addBoss 函数的 Enterframe 事件列表器。

于 2012-08-19T18:32:48.353 回答
3

这应该这样做。

private var isBossTime:Boolean = false;

private function addBoss():void
{
    if(kills >= 3 && isBossTime == false)
    {
        trace("boss time");

        isBossTime = true;
    }
}
于 2012-08-19T18:07:51.483 回答