// move u1 100 units towards u2
move = 100
x1 = GetUnitX(u1)
y1 = GetUnitY(u1)
x2 = GetUnitX(u2)
y2 = GetUnitY(u2)
dx = x2 - x1
dy = y2 - y1
distance = sqrt(dx * dx + dy * dy)
scale = move / distance
SetUnitX(u1, x1 + scale * dx)
SetUnitY(u1, y1 + scale * dy)