actionscript-3 - Animate CC 前进到下一帧并注释掉 gotoAndStop?

标签 actionscript-3 flash actionscript jquery-animate

我正在编写这段代码来测试您的 react 时间,然后前进到下一帧。它显示一个框,然后对框出现的时间和用户按下 [A] 的时间之间的差异进行计时。这是我的代码

import flash.utils.Timer;
import flash.events.Event;
import flash.utils.getTimer;

stop();
    var canPress = false;
    var startClock:Timer = new Timer(4000+Math.random()*6000, 1);
    grbox.y = -500;
    startClock.start();
    var startTime:int = 0;

function displayBox(evt:Event):void{
    canPress = true;
    grbox.y = 143;
    var startTime:int = getTimer();
}

function Tpressed(e:KeyboardEvent):void
{
   if(e.keyCode==Keyboard.A){
        if(canPress==true){
        var endTime:int = getTimer();
        score1 = endTime-startTime;

        if(score2<0){
            //gotoAndStop(3);
        }
        else{
            //gotoAndStop(4);
        }
   }
   }

}

stage.addEventListener(KeyboardEvent.KEY_DOWN, Tpressed);
startClock.addEventListener(TimerEvent.TIMER, displayBox);

出于某种原因,如果我只是按 [A] 按钮,它就会前进到下一帧。为什么会出现这种情况?!?!我的“gotoAndStop(4);”命令已被注释掉,因此它应该执行任何操作,但事实确实如此。

编辑:这是我的 .fla 文件:https://drive.google.com/open?id=0BxtLreFIVnSWR2VPSGdSaHZGaVk 原始代码:https://docs.google.com/document/d/1GRZIaKAdRNu3z3aPjjXNcgqMl2BhR-ZBT6gU7OeSbWQ/edit?usp=sharing

最佳答案

在其中一个框架上,您添加了一个事件监听器,用于在舞台上按下按键。这可能就是你的问题所在。因此,当您按下任意键时,它会调用 pressed 函数以及 Tpressed 函数。由于每个函数中检查的键是“A”,因此两个函数都执行其 if block 。两个 if block 都调用 gotoAndStop 方法。

在不确切知道您要在大局中实现什么目标的情况下,可以通过在离开该帧时删除 pressed 函数的事件监听器来解决此问题。

可能看起来像:

function pressed(e:KeyboardEvent):void
{
   if(e.keyCode==Keyboard.A){
        gotoAndStop(Math.round(Math.random()+2));
        // remove the event listener since we are leaving this frame and you apparently only want this function to work on this frame
        stage.removeEventListener(KeyboardEvent.KEY_DOWN, pressed); 
   }
}

关于actionscript-3 - Animate CC 前进到下一帧并注释掉 gotoAndStop?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41334429/

相关文章:

actionscript-3 - 嵌入欧美字符

c# - AS3 客户端套接字无法连接到本地网络服务器

flash - RED5服务器和闪存问题

javascript - 表中的 Swiffy 对象对齐

javascript - 使用 ExternalInterface 从 JavaScript 调用 ActionScript 3.0/Flash 中的函数

regex - Flash AS3 从字符串中提取数字(正则表达式?)

php - 相对罕见的 as3/php/mysql 交互的最佳方法是什么

flash - Flash/as3中有哪些好的内存管理技巧

flash - 在actionscript中,如何判断数字的类型是Number还是int还是uint?

flash - Flash Builder中的嵌入式媒体是个什么样的类?