如何仅在单击图像时到达帧。 AS3

How to only reach a frame when an Image is clicked. AS3

我是 flash pro 的新手,我无法解决这个小问题...

我在某一帧上有一张图片,如果你点击它我想转到另一帧。如果没有点击图像,那么您应该无法到达另一帧。

我怎样才能做到这一点?

编辑

要在评论中进一步说明:

要防止时间轴在单击图像之前到达帧,您可能需要执行以下操作:

  1. 当您到达该图像时停止播放时间线。通过将 stop(); 放在包含图像的框架上来执行此操作。

  2. 听图片上的点击。在出现图像的框架上也执行此操作,然后放置 stop().

    image.addEventListener(MouseEvent.CLICK, imageClick,false,0,true);
    
  3. 创建点击功能,然后在其中(点击图像时运行)转到您想要的任何帧。

    function imageClick(e:Event):void {
        gotoAndPlay(5);
    }
    

在 AS3 中有多种导航框架的方法。

最常见的是 gotoAndPlay 函数。这会将您带到指定的帧并从那里播放时间轴。

例如,如果您想转到第 7 帧,您可以这样做:

gotoAndPlay(7);

还有 gotoAndStop,它会将您带到指定的帧,但会在那里停止播放头:

gotoAndStop(7);

对于gotoAndStop/Play方法,可以传入帧号,或者用引号括起来的帧标签:gotoAndStop("myLabel");

您可以做的其他事情:

nextFrame();  //goto the next frame

prevFrame();  //goto the previous frame

如果您不确定自己在哪个框架上,您可以通过 currentFrame 属性.

找到答案

因此,如果您有一个脚本 运行 在计时器或输入帧处理程序中,您可以这样做:(如果在第 5 帧,转到第 1 帧)

if(currentFrame == 5){
    gotoAndStop(1);
}

按照这些思路,还有 currentFrameLabel 属性,它将告诉您当前帧的标签是什么(如果有的话)。

还有currentLabel,它会为您提供当前或(如果当前帧上不存在标签)上一个遇到的标签。