По геометрии/алгебре стояли двойки, перестал учить матешу ещё с 6 класса, поэтому сам я не в состоянии разобрать это. В общем, мне нужно узнать с какой стороны стоит юнит от юнита, помогите пожалуйста

function GetDirection takes unit u, unit targ returns int
         local real alpha = GetUnitFacing(u)
         local real gamma = bj_RADTODEG * Atan2(GetUnitY(targ)-GetUnitY(u), GetUnitX(targ)-GetUnitX(u))
          if gamma < 0 then
            set gamma = 360. + gamma
          endif
          if (alpha < 180. and not(gamma > alpha and gamma < alpha + 180.)) or (alpha > 180. and gamma > alpha - 180. and gamma < alpha) then
            return 2
          else
            return 1
          endif
    endfunction
`
ОЖИДАНИЕ РЕКЛАМЫ...
28
function GetDirection takes unit u, unit targ returns int
         local real alpha = GetUnitFacing(u)
         local real gamma = bj_RADTODEG * Atan2(GetUnitY(targ)-GetUnitY(u), GetUnitX(targ)-GetUnitX(u))
          if gamma < 0 then
            set gamma = 360. + gamma
          endif
          if (alpha < 180. and not(gamma > alpha and gamma < alpha + 180.)) or (alpha > 180. and gamma > alpha - 180. and gamma < alpha) then
            return 2
          else
            return 1
          endif
    endfunction
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.