【发布时间】:2013-07-02 16:57:35
【问题描述】:
我遇到了一个问题,即“点”类型变量 velocity 在没有任何更改调用的情况下更改。
private function framecode(e:Event) {
trace(getVelocity().y);
tracks.gotoAndStop(2);
trace(getVelocity().y);
}
此代码是名为“tank”的类的一部分,它扩展了 velocity 使用的类(我的移动对象类)。 velocity 是私有点类型变量,getVelocity() 是公共访问方法。 tracks 是一个命名的movieClip,包含在与tank 链接的片段中。事件侦听器是 ENTER_FRAME。 tracks的帧上没有编码。
不知何故,这两条轨迹给出了不同的值(第一个是正确的),我无法弄清楚 gotoAndStop() 可能如何影响它(以及如何修复它)。
我发现 play() 不会重现错误,但 prevFrame() 和 nextFrame() 会。由于该变量是私有的,因此此类甚至不应该访问它来更改它。
另一个奇怪的是,如果将事件监听器更改为 FRAME_CONSTRUCTED 或 EXIT_FRAME,会有很大的延迟,我的 movieClip 会在几秒钟后随机消失。
感谢您的阅读,任何帮助将不胜感激。
【问题讨论】:
标签: actionscript-3