在这部分代码中,我正在检查游戏中的某个级别是否已解锁。数组“级别”包含12个Movieclips,“levelsUnlocked”是用户达到的最高级别。因此,通过这段代码,我正在检查水平位置是否高于levelsUnlocked值,如果是,它会将其移动到第2帧(这是锁定的图像),如果更低,则将其保留在第1帧。AS3 - 未检索到正确的项目
我的问题是:
else语句,当我指的是水平[levels.length - 我],它并没有把它当作一个影片剪辑,但是如果我把它称为水平[1]或水平[3],它的确如此。有人能告诉我为什么会发生这种情况吗?
function unlockLevels():void
{
for (var i:int = 0; i < levels.length; i++)
{
if (levels.length - i > levelsUnlocked)
{
levels[levels.length - i].gotoAndStop(2);
}
else
{
levels[levels.length - i].gotoAndStop(1);
}
}
}
它就在那里。谢谢。 –