打印

[AS3] 如何使子弹刷新变快但是速度不变?

new一个子弹出来,它的速度是每enterFrame前进10个像素,我如何使enterFrame/2前进10个像素来提高子弹的速度??
在enterFrame中写x+=5;setTimeout(function(){x+=5},enterFrame时间/2);
但这种做法不可取
http://www.flash023.cn 终极讨厌
那应该用什么方法??
这个子弹速度需要很快,每帧十个像素显然是不够的,画面很小,导至距离很远,起码要每帧三十个像素才能达到这种速度,但是三十个像素是不是太大了?这样会使子弹和物体碰撞无法检测,因为物体才十个像素,一下子飞了三十个像素,超过了物体,并没有碰撞上去
用Timer类来做驱动事件
http://www.flash023.cn 终极讨厌

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
能不能讲讲原理??
另外,问下面向对象的设计问题
有一个子弹类,是在这个类体里每new一个出来就给它一个EnterFrame事件,还是把它加入到文档类里然后由文档类统一来执行EnterFrame(参考java的方法,但是实现起来好像有问题),

TOP

过快的子弹没有意义

反正人家也躲不开
自己编程来判断两点自己的轨迹把,不要依赖hittest

那玩意我从来没用过。明明自己判断下x,y坐标就可以。

[ 本帖最后由 flashyiyi 于 2008-6-5 21:14 编辑 ]
yiyiflashstudio.com

TOP

neterframe间隔的时间是由你设的FPS决定的....
因此这个时间是变不了的

TOP