Добавлен Darknessay
Короче, знакомый долго ипался и изобрел все таки функ по вычислению "смотрит ли юнит юниту в лицо", но после проверки этого ифом, дальнейшие действия как то багуются. Не уверен как обьяснить.
Я пробовал делать:
Я пробовал делать:
if F2F = true then
действия, если юнит смотрит в лицо
else
иначе - обновить способность(типа некорректный каст, не в лицо)
endif
И в таком случае, "else" не срабатывало.
Потом я попробовал устанавливать перед этим ифом integer =0, а в нем integer =1, а ПОСЛЕ него - "if integer==0 then", и этот иф не срабатывал, несмотря на то, что все сообщения выдают подходящий integer.
Я попробовал просто проверить, не сломались ли ифы вообще и воткнул "if true then" - это сработало. Попробовал поменять integer на boolean и не работает.
Потом я попробовал устанавливать перед этим ифом integer =0, а в нем integer =1, а ПОСЛЕ него - "if integer==0 then", и этот иф не срабатывал, несмотря на то, что все сообщения выдают подходящий integer.
Я попробовал просто проверить, не сломались ли ифы вообще и воткнул "if true then" - это сработало. Попробовал поменять integer на boolean и не работает.
Я не шарю в Jass'ах, а знакомый игнорит. Помогите пофиксить это дерьмо, пожалуйста...
Вот его функция:
Вот его функция:
function F2F takes unit c,unit td,real f returns boolean
real a = Atan2(GetUnitY(td) - GetUnitY(c), GetUnitX(td) - GetUnitX(c))
real rsd0 = (GetUnitFacing(td))*bj_DEGTORAD
real rsd1
real rsd2
integer i
if f>180 then
f = 180
endif
if f<= 0 then
f = 0
endif
f = f*0.0175
if rsd0 == 0
rsd0 = 6.28
endif
if rsd0 >6.28
rsd0 = 6.28
endif
rsd1 =(rsd0+f)
rsd2 =(rsd0-f)
if rsd1<= 0
rsd1 = 3.14-RAbsBJ(rsd1)
endif
if a<= 0 then
a = 3.14-RAbsBJ(a)
else
a = a+3.14
endif
if rsd1>6.28
if a>0 and a<(rsd1-6.28)
a = a+6.28
endif
endif
if rsd1<=6.28
if rsd0<=(f) and a>(6.28-rsd0)
a = 0-rsd0
endif
endif
if a<=rsd1 and a>=rsd2
i = 1
endif
f = 0
c = null
td = null
return i == 1
endfunction
Вот скрины моего тригга:
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Вы скажете "BJ", а я скажу, что мне раскрывать их впадлу и утечки реалов нестрашны.
bump
скидывал тебе это, что не помогло?
и проверяй дебагом, работает = не работает.