简单点做就把弧线拆分为两个方向的正弦运动
假设变量 ang = 前进方向
记录马甲最开始的x,y坐标为变量 ox, oy,整个运动完成的总时间为time
前进最大距离xmax,横向摆动最大距离ymax
计时器0.02秒计时,每次到时让变量pass = pass + 0.02
计算出每次前进距离和摆动距离
xdis = xmax + xmax * Sin(pass * 360/time-90)
ydis = ymax * Sin(pass * 360/time)
然后计算实际位移的坐标
x = ox + xdis *Cos(ang) + ydis * Cos(ang+90)
y = oy + xdis * Sin(ang) + ydis * Sin(ang+90)
最后设置马甲单位的坐标为x,y
我这里用的都是角度制,如果你用的是弧度制的,需要转换一下
如果马甲最后要飞回来的话,需要把ox和oy调整为英雄实时的位置