Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 如何根据另一层中的值使电影剪辑不可见?_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 如何根据另一层中的值使电影剪辑不可见?

Actionscript 3 如何根据另一层中的值使电影剪辑不可见?,actionscript-3,flash,Actionscript 3,Flash,我正在尝试为我的游戏创建一个“成就”页面,如果用户的高分大于100,那么成就就可以解锁。我试着使用这样的代码,但似乎不起作用 function Check(); if(endscreen_mc.highscore_txt > 100) { medals.roachLock.visible = false; } else if(endscreen_mc.highscore_txt < 100) { medals.roachLock.visible = true; } else if(e

我正在尝试为我的游戏创建一个“成就”页面,如果用户的高分大于100,那么成就就可以解锁。我试着使用这样的代码,但似乎不起作用

function Check();
if(endscreen_mc.highscore_txt > 100)
{
medals.roachLock.visible = false;
}
else if(endscreen_mc.highscore_txt < 100)
{
medals.roachLock.visible = true;
}
else if(endscreen_mc.visible == 100)
{
medals.roachLock.visible = true;
}
函数检查();
如果(endscreen\u mc.highscore\u txt>100)
{
.roachLock.visible=false;
}
否则如果(endscreen\u mc.highscore\u txt<100)
{
aclements.roachLock.visible=true;
}
否则如果(endscreen_mc.visible==100)
{
aclements.roachLock.visible=true;
}

高分值保存在共享对象中。我的代码有什么问题,我可以做些什么来修复它?

endscreen\u mc.highscore\u txt属性的类型是什么?如果是
TextField
,则首先需要访问TextField的
text
属性,并将其转换为
数字,如下所示:

var score:Number = Number(endscreen_mc.highscore_txt.text); // this casts the String value of the text property to a Number

if(score > 100)
{
    medals.roachLock.visible = false;
}
else
{
    medals.roachLock.visible = true;
}

此外,我还简化了if/else语句。现在,如果分数不大于100,锁将可见。

ActionScript中的visible属性是布尔类型-这意味着它只能有值“true”或“false”,因此您的第三个语句

否则如果(endscreen_mc.visible==100)

这是行不通的。也许你想放在那里

endscreen_mc.highscore_txt

还有一件重要的事情,你的函数检查();没有主体,这意味着每个actionscript函数如下所示:

function functionName(){}//your if statement goes between curly brackets.
如果我没弄错的话,你的函数应该是这样的:

function Check(){
    if(endscreen_mc.highscore_txt > 100){
        medals.roachLock.visible = false;
    } else {
        medals.roachLock.visible = true;
    }
}