我想让一个精灵(敌人)在屏幕周围随机移动。敌人将移动x,y移动500帧然后移动到另一个随机方向。
我的问题是试图使对象保持每个帧的方向,直到计数器达到500.相反,对象每帧都改变方向。
if e_move_count <= 500:
e_xMove = random.randint(-1,1)
e_yMove = random.randint(-1,1)
self.enemy.move(e_xMove, e_yMove)
e_move_count += 1
if e_move_count >= 500:
e_xMove = random.randint(-1,1)
e_yMove = random.randint(-1,1)
self.enemy.move(e_xMove, e_yMove)
e_move_count = 0
我确切地知道我的问题是什么,但我想不出一个解决方法。如何在不重新定义每个帧的x,y的情况下保持一个方向?如果可以在Python中使用计时器,我愿意使用计时器吗?
答案 0 :(得分:2)
尝试将其更改为:
if e_move_count <= 500:
self.enemy.move(e_xMove, e_yMove)
e_move_count += 1
if e_move_count >= 500:
e_xMove = random.randint(-1,1)
e_yMove = random.randint(-1,1)
self.enemy.move(e_xMove, e_yMove)
e_move_count = 0
这样,方向只会在e_move_count为&gt; = 500
时发生变化