我有一个游戏,你是飞船,背景在你身后移动,模拟运动。
从玩家对象获取速度,然后按照玩家的方向将其应用于每个Asteroid实例。
问题是方向是由鼠标控制的,这会产生问题,例如,如果我以极高的速度向左完全移动,然后又转为完全向右移动,则停止即刻即刻移动,而我立即向右移动。这是不现实的,没有人对我如何在不删除鼠标控件的情况下实现更真实的速度变化有任何想法。
答案 0 :(得分:0)
我不确定您是否正在寻找它,但是运行非常顺利:将其放入播放器对象的step事件中:
direction = point_direction(x, y, mouse_x, mouse_y)
speed = distance_to_point(mouse_x, mouse_y) / 10
与鼠标的距离越小,播放器运行的速度就越慢。
答案 1 :(得分:0)
使用motion_add()模拟作用在飞船上的力,而不是立即设置速度。