主题:  使用THE TIMER实现加速运动?

fatpenguin

职务:普通成员
等级:1
金币:0.0
发贴:7
#12001/7/8 22:39:43
正在尝试制作一个按下方向键便持续从0加速运动的例子,v=v+at,其中a为定值,v 和 t 初值为0,t 通过 the timer 取得,遇到几个问题:
一、startTimer不能在on keyDown中写出,否则会始终重新记时,如果写在on keyUp中写的话可以,但因为the timer会一直记时,所以如果很长一段时间没有按键的话再次按键 t 会很大,从而初速度也很大。
二、想通过跳桢来实现,做法是第一桢中设置on keyDown在其中写入the timer = 0, 第二桢中只需要判断是哪个键被按下,但问题是此时的 the timer还会反复置零。
哪位曾经做过这样东西的大侠请指教一二,谢了!



donlee

职务:普通成员
等级:1
金币:1.0
发贴:271
#22001/7/9 8:50:12
不要用the timer等,它们相当于全局变量。
给你的sprite加上一下ptime属性,然后在behavior中结合the ticks来自己修改ptime的值,以此来代替系统的计时器。



jerrowolf

职务:普通成员
等级:1
金币:0.0
发贴:83
#32001/7/9 8:56:26
在第一种方法中,试试
ptimer=the timer
t=the timer-ptimer
这样每次keydown时都可以重新计时了