首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何重置可变闪存游戏CS6 AS3

如何重置可变闪存游戏CS6 AS3
EN

Stack Overflow用户
提问于 2013-01-18 01:27:41
回答 2查看 1.4K关注 0票数 0

我正在编码一个闪光灯游戏,在其中球击中一个电影剪辑对象,这将用户带到一个新的场景。

这很好,但当我回到游戏现场时,球的移动速度是原来的两倍。

返回游戏时,如何/在哪里重置变量。请看下面我是如何设置变量的。

代码语言:javascript
复制
var XSpeed:Number = 9;
var YSpeed:Number = 9;

任何帮助都将不胜感激。谢谢。

EDIT****************************************

好的,我想我把这个问题说得很糟糕,这是我的相关代码:

代码语言:javascript
复制
var XSpeed:Number = 9; //X Speed of the Ball
var YSpeed:Number = 9; //Y Speed of the Ball


function beginCode():void{

mcPaddle.addEventListener(Event.ENTER_FRAME, movePaddle);

mcBall.addEventListener(Event.ENTER_FRAME, moveBall);

mcBall.addEventListener(Event.ENTER_FRAME, changeFrame);
}

然后在末尾调用beginCode()。如前所述,我认为问题在于事件侦听器已经存在,每次用户返回页面时都会再次调用事件侦听器。我尝试添加一个if语句来检查(请参阅下面的注释),但这没有起作用.

任何帮助都将不胜感激。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2013-01-18 01:31:01

嗯,这完全取决于你的游戏是怎么写的,以及你期望它如何工作。

对于您的特定问题,它就像执行这个when the ball hits a movie clip一样简单

代码语言:javascript
复制
XSpeed = 9;
YSpeed = 9;
票数 0
EN

Stack Overflow用户

发布于 2013-01-18 01:32:52

听起来像this question。问题是,当游戏重新启动时,事件侦听器再次被添加,使游戏循环触发的频率增加了一倍(一切发生的速度都是原来的两倍)。

您需要在游戏结束时删除侦听器,或者添加检查以确保只添加一次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14391111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档