如何在几秒钟内显示文本/动画片段并删除动作脚本3中的对象

时间:2013-07-31 12:18:53

标签: actionscript-3

我是flash(actionscript3)的初学程序员,我想做一个简短的Point and Click风格游戏,

我有一个带门的房间,需要钥匙才能打开,还有一个包含门钥匙的盒子。 我做对了你可以看SWF文件(我的问题链接)。但我有两个问题:

1-当我点击Box时,我看到盒子内部,当我拿起钥匙,然后返回到 房间,我再次点击Box,我再次看到钥匙,但我不希望这种情况发生,我该怎么办?去掉它 ?怎么样?

2-当我点击门时,会出现“需要钥匙”的文字,但我想在3秒后消失它。我怎么能这样做?

如果我要填写我的代码,请告诉我,我会把它们放在这里。

这就是我所做的:http://apple-pib.persiangig.com/Point_And_Click.swf

这是关于密钥的代码:

import flash.events.MouseEvent;

stop();

key.addEventListener (MouseEvent.CLICK , keypickedup ) ;

function keypickedup (event : MouseEvent ) : void {   
canyouopendoor =true;
key.visible = false;


}

和我关于门的代码:

import flash.events.MouseEvent;

stop ();
keyneeded.visible = false;

door.addEventListener (MouseEvent.CLICK , thedoor ) ;

function thedoor (event : MouseEvent ) : void {
if (canyouopendoor ==true) {
gotoAndStop (4);
}

else {
keyneeded.visible = true ;

}

 } 

最诚挚的问候

1 个答案:

答案 0 :(得分:0)

与变量canyouopendoor一样,如果您拿到钥匙,则需要true的变量,或者当您没有钥匙时false。但您也可以使用canyouopendoor,因为只有在您拿起钥匙时才会这样。

您需要将此行添加到密钥的代码中:

key.visible = !canyouopendoor;

您需要使用setTimeout等待几秒钟才能将文字隐藏在门上方。类似的东西:

setTimeout(function():void { keyneeded.visible = false; }, 3000);

3000 3秒钟。

希望它有所帮助。