Добавлен NatriY
Функция не возвращает юнита. Снизу код с самой функцией и там, где она вызывается. В самой функции юнит есть, а в возвращённом значении уже нет. В чем проблема?
static method getFreePlayerCircle takes int playerid returns unit
int j = 0
unit u = null
loop
exitwhen j == 8
u = playerCircles[playerid][j]
if GetUnitUserData(u) == 0{
BJDebugMsg("inside "+I2S(GetHandleId(u)))
return u
}
j += 1
endloop
return null
endmethod
unit playerCircle = getFreePlayerCircle(playerid)
BJDebugMsg("outside: "+I2S(GetHandleId(playerCircle)))
addUnitToPlayerCircle(spell_u, playerCircle)
На скрине срабатывание этого кода.
Принятый ответ
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован MpW
и снаружи unit playerCircle = getFreePlayerCircle(playerid)
а ну да, все норм вроде бы, показалось что одноименные заюзаны
Отредактирован biridius