Actionscript 3 有可变问题的

Actionscript 3 有可变问题的,actionscript-3,variables,flash-cs5,Actionscript 3,Variables,Flash Cs5,我在更新变量时遇到问题。下面,我的主要文档功能将我的级别设置为1并生成多个平铺。它等于1,但我有一个if语句,它说如果var等于true,就上升一个级别 public var enemiesDefeated:Boolean = false; addChild(level); //START THE GAME AT LEVEL 1// level.levelNumber = 1; if (enemiesDefeated == true){

我在更新变量时遇到问题。下面,我的主要文档功能将我的级别设置为1并生成多个平铺。它等于1,但我有一个if语句,它说如果var等于true,就上升一个级别

    public var enemiesDefeated:Boolean = false;        
    addChild(level);
    //START THE GAME AT LEVEL 1//
    level.levelNumber = 1;
    if (enemiesDefeated == true){
        level.levelNumber += 1;
    }
    var tileh:int = 60;

    for (var Y:int=0; Y<floor.length; Y++)
    {
        for (var X:int=0; X<floor[Y].length; X++)
        {
                var cell:MovieClip = new Tile(X,Y);
            cell.gotoAndStop(floor[Y][X]);
            cell.x = ((X-Y)*tileh)+365;
            cell.y = ((X+Y)*tileh/2)+70;
            addChild(cell);

            cell.addEventListener(MouseEvent.CLICK, mouseclick);
            cell.addEventListener(Event.ENTER_FRAME, onGame);
            cell.addEventListener(Event.ADDED_TO_STAGE, addEnemy);
        }
    }
public-var-enemiesdefeatured:Boolean=false;
addChild(级别);
//在1级开始游戏//
level.levelNumber=1;
如果(enemiesDefeated==true){
level.levelNumber+=1;
}
var tileh:int=60;

对于(var Y:int=0;Y提供更多代码,因为它在您检查
enemiesdefeatured
变量的函数中不可见。很可能在
enemiesdefeatured
变量变为
true
后,您不调用检查函数。enemiesdefeatured是一个公共函数。我认为将其公开将使每个函数都可以访问它。)我将更新代码。
enemiesdefeatured
不是函数而是变量。是否尝试
跟踪(enemiesdefeatured)
在您的
之前如果
是的,很抱歉我指的是var。它跟踪为false,然后当enemyHP为0时,跟踪为true,但阶段没有改变。我猜是因为当我将levelNumber声明为1时,它将保持这种状态。我很确定每个帧的每个单元格都会调用onGame。这是有意的吗?
function onGame(event:Event){

    ...

    if (enemy.enemyHP <= 0) 
        {
             removeChild(enemy);
             enemy.enemyDead = true;
             enemiesDefeated = true;
             trace("Dead", enemy.enemyDead);
        }
}