问题标签 [enterframeevent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1123 浏览

actionscript-3 - as3 如何停止无限循环?

我有一个网站,基本上我想使用 Flash 自动将网站重定向到另一个网站,并在加载后立即将其重定向到另一个网站。但它一直在快速射击,甚至一度让我的电脑崩溃。如何将其设置为仅发送用户一次。

'//' 只是以防你在你的闪存中尝试。我也不想让你崩溃。“痕迹”足以看出我在说什么。

0 投票
2 回答
123 浏览

lua - EnterFrame 事件在 Corona 中提前停止

我想将我的矩形宽度增加 1,并希望它在达到屏幕宽度时停止。但是,它在我的代码的屏幕中间停止增加。你能告诉我我错过了什么吗?

0 投票
1 回答
242 浏览

actionscript-3 - 屏幕滚动不适用于右边缘和下边缘 AS3

嗨,以下代码在我的游戏中滚动到屏幕的左边缘或右边缘时有效;然而,当滚动到“地图”的边缘时,当滚动到屏幕的右边缘或下边缘时,我能够看到地图边缘之外,即我看到的是空白,即舞台的颜色。然而,当滚动到地图的左边缘或上边缘时,我无法看到地图边缘之外的东西。

希望这是有道理的,谢谢

0 投票
2 回答
22277 浏览

actionscript-3 - 在 AS3 中,removeEventListener(Event.ENTER_FRAME) 不起作用

我已经处理这个问题好几天了。我已经黔驴技穷了!我似乎无法在任何论坛、文档等的任何地方找到明确的答案。

第一次运行时一切看起来都很好,或者当我加载下一个级别供用户玩时。但是如果用户按下 ESC 键来加载不同的关卡,ENTER FRAME 监听器不会被删除,它会复制其中的所有触发器,显示玩家的速度非常快,而且很时髦,因为它建立在之前的实例化 ENTER FRAME 侦听器。

我不知道我是否有匿名函数的问题,或者在我的 removeEvent... 命令中引用了未知实例...底线,我放弃了,我需要这个有效的帮助!!!

这是代码:

我还尝试将 eventListener 添加和删除到舞台、MovieClip(Root) 或什么都没有,结果总是相同的。

我知道可能有其他方法来设计这样一个过程,但请注意我目前在这样做时并不是很灵活,因为项目很长(大约 4000 行代码)并且以这种方式删除 ENTER FRAME,疯了或不应该仍然工作!

提前感谢任何愿意提供帮助的人。

0 投票
2 回答
1070 浏览

actionscript-3 - AS3 倒数计时器随着时间的推移会出现极端的帧率损失

我有一个用 AS3 编写的简单倒计时计时器,它随着时间的推移逐渐增加 CPU 使用和帧渲染时间,直到帧速率在 10 分钟内下降到每秒 2-3 帧。时间线有 1 帧,舞台有 4 个 tlf 文本区域,实例名称为 HH MM SS 和 FF。代码根据与当前时间和“事件时间”的比较,在每一帧更新这些文本区域。
我查看了侦察,违规活动是“处理事件'渲染'”,它占用了 95% 的活动时间

代码如下所示

0 投票
2 回答
615 浏览

actionscript-3 - 如何在 ENTER_FRAME 侦听器的事件函数内运行代码,该侦听器不是每帧运行一次?

所以,我有类似的代码(这是为了演示目的):

问题是,为了测试 sampleMovieClip2 是否与 sampleMovieClip1 发生冲突,我需要在每一帧使用 enterFrameFunction 对其进行测试,因此我放入该函数中的任何代码都会在测试返回 true 的每一帧运行,但我想要 runAFunctionIDontWantToBeRunOnEveryFrame(); 函数只运行一次。

我通过添加一个变量来确定以前条件是否为真,从而成功地做到了这一点,但我现在遇到了麻烦,想知道是否有一种不同的、不那么乏味的方法来获得结果。像一个事件监听器来测试一个返回 true 的布尔值?

0 投票
1 回答
94 浏览

actionscript-3 - AS3 让一个影片剪辑在被单独放置一段时间后消失

原始编辑我想知道在舞台上制作movieClip淡入淡出方式的最佳方法。我可以猜到如何在 as2 中做到这一点(这就是我所学的),但我不确定如何在下面开发我的代码。作为猜测,我假设将它附加到 enterFrame 事件。

基本上,如果用户没有与气球进行交互,在 5 秒的过程中,它会使用 alpha 逐渐消失。

任何指示或建议?我是 AS3 的新手。(请忽略点击)

二次编辑-----

0 投票
1 回答
335 浏览

actionscript-3 - AS3 - 摩擦(?)导致影片剪辑跳跃,临时改变路径(包括可播放的 SWF)

我在 FlashBuilder 中制作游戏,其中玩家使用箭头或 WASD 控制舞台周围的影片剪辑 (_character)。在舞台上,有带有碰撞检测功能的正方形/框,周围有 50 像素的边框。

在测试时我注意到,如果我按住一个方向键,然后切换到另一个,并且影片剪辑正在通过盒子中的间隙,影片剪辑将在先前按下的方向上跳跃几个像素,然后再次快速返回。

这是一瞬间的闪烁,但会产生令人分心的跳动和口吃效果。多次按键会发生这种情况,但如果我按下一个按钮,松开它,然后按下另一个方向按钮,则不会。

下图中的黄色十字显示了发生这种情况的一些区域。

在此处输入图像描述 我的代码中的摩擦数越大,它就越明显。但是如果我将摩擦力降低太多(0.8ish),电影剪辑在舞台上移动太慢,游戏就无法玩了。

我目前的摩擦力为 0.88,这减少了跳跃,但它仍然很明显。有谁知道为什么会发生这种情况和/或我该如何阻止它?(当然,同时保持电影剪辑的流畅运动。)

此 SWF 在 0.94 处显示摩擦,因此效果非常明显,尤其是在右上角。(用箭头或 WASD 在舞台上移动角色。)

0.94 摩擦力 SWF

此 SWF 的摩擦系数为 0.88,不太明显,但它仍然会发生!

0.88 摩擦力 SWF

如果我从 UP 到 DOWN 或 LEFT 到 RIGHT,穿越间隙,则不会发生此问题。仅当按下两个对角线链接的方向按钮时才会发生这种情况,穿过一个间隙。

如果我向上旅行,然后向左,MovieClip 将向上跳跃。如果我向下移动,然后向左移动并穿过一个间隙,影片剪辑将向下跳跃几个像素,就像角色蹲着一样(?)


当前代码

Rookies 游戏/Application 类用作关卡切换器,将 levelOne 放到舞台上。

一级包含大部分代码和大部分工作。

_character 是Character Class的一个实例。

SWF 有五个关键帧,每个关键帧里面都有一个动画,当四个方向按钮被按下时播放,加上没有按下任何东西时的红色静止动画。

BoxBackground类是相同的,它们只是嵌入 png 并添加精灵。请注意,网格背景是单个图像。游戏不是基于瓷砖的。.

最后是碰撞类。当 _character 与框碰撞时,它会调用 Collision.block 函数。

任何帮助将非常感激。我是初学者,所以问题总是很简单,我错过了。

我还问了一个关于动画不必要的摆动的问题。如果这些信息中的任何一个对您有帮助,或者您足够聪明,也知道解决方案,那么问题就在这里

0 投票
0 回答
453 浏览

actionscript-3 - AS3 - 电影剪辑动画(不受欢迎)上下摆动。[包括可播放的 SWF]

我正在制作一个游戏,其中玩家使用箭头或 WASD 控制舞台周围的电影剪辑(_character)。在舞台上有带有碰撞检测的方块/盒子。加上一个 50 像素的舞台边界。

_character 有五个关键帧,每个里面都有一个动画,当四个方向按钮被按下时播放,加上没有按键时红色的静止动画。移动角色的身体和头部应该是静止的,腿是移动的。下面的例子

_character 右动画

然而我的问题是电影剪辑在舞台周围的不同区域上下摆动,然后在其他地方很好。

在下面的 SWF 示例中,您会看到角色的嘴和肩膀在舞台周围上下摆动,但奇怪的是,它在游戏区域的底部又恢复了正常。(除了右下角的两个盒子之间。)

新秀游戏 SWF

这是具有所有帧的嵌入式 SWF。唯一应该改变的是身体颜色和眼睛和腿的移动。头部和肩膀不会上下摆动。

字符资源 SWF

有谁知道这是什么或为什么会发生?我三重检查了我的角色 swf,以防万一有一个错误定位的帧来创建弹跳/摆动动画,但它们都是正确的,swf 不应该这样做。

如果我删除了一些盒子,浮动效果会在某些区域停止,但会在其他区域恢复。有时当它碰到一个盒子时它会摆动而盒子的其他侧面它不会(?)奇怪的是,当我按下游戏区域的底部时,摆动又回来了。在另一个 SWF 中,舞台底部是 MovieClip 没有跳动/弹跳的少数区域之一。

新秀游戏 SWF 带更少的盒子

如果我移除所有盒子,除非我按下可播放区域的底部,否则会停止摆动。但只有一侧会导致摆动。如果我也移除舞台边界,则摆动可能会完全停止,因为 MovieClip 没有任何反应。


当前代码

Rookies 游戏/Application 类用作关卡切换器,将 levelOne 放到舞台上。

一级包含大部分代码和大部分工作。

_character 是Character Class的一个实例。

SWF 有五个关键帧,每个关键帧里面都有一个动画,当四个方向按钮被按下时播放,加上没有按下任何东西时的红色静止动画。

BoxBackground类是相同的,它们只是显示精灵。请注意,网格背景是单个图像。游戏不是基于瓷砖的。.

碰撞类。当 _character 与框碰撞时,它会调用 Collision.block 函数。

任何帮助将非常感激。

我还问了一个关于 Movieclip 在穿越迷宫间隙时的跳跃/颤抖的问题。如果这些信息中的任何一个对您有帮助,或者您足够聪明,也知道解决方案,那么问题就在这里

0 投票
1 回答
102 浏览

actionscript-3 - ENTER_FRAME 是在垂直消隐信号结束时还是在窗口开始时调度的?

ENTER_FRAME 是否在垂直消隐信号(vblank 或 vsync)结束时调度 - 屏幕上帧的实际开始,或者在 flash 窗口的开始(如果 stage3D 应用程序处于窗口模式),或者在不精确的时间(取决于……Flash 的内部情绪)?

(我使用纯 AS3 和 Stage3D 以及 3D GPU 渲染 - 没有 2D 显示对象、Flash 时间线、影片剪辑等)。

编辑:请参阅相关问题:听众可以错过或接收到 ENTER_FRAME 吗?