привет всем! как передать локальную переменную типа юнит или эффект без хэш таблицы, на вверхнюю функцию?
например:
function Name takes nothing returns nothing
//вот здесь нужно переместить нижние локальные переменнные юнит,как это сделать?
endfunction

function Dummy takes nothing returns nothing
local trigger Dummy2=CreateTrigger()
local unit u = GetTriggerUnit()
local unit s = GetSpellTargetUnit()
TriggerRegisterEvent(Dummy2, function Name) //(пишу примерно знаю код неправильный примерный, просто рядом нет пк)
endfunction

Нужно определить какого типа переменные должна принимать верхняя функция и вместо
function myfunc_01 takes nothing returns nothing
нужно написать, например:
function myfunc_02 takes [parameter] {type}, [parameter] {type}, [parameter] {type}  returns nothing
Дальше в теле основной функции вызываешь верхнюю функцию и передаёшь в неё параметры:
call myfunc_01([parameter], [parameter], [parameter])

Лучше опиши что конкретно ты хочешь сделать. Если упомянул о хеше.
`
ОЖИДАНИЕ РЕКЛАМЫ...
26
Собсно, а зачем в этом конкретном случае переносить переменные в верхнюю функцию? Создай их прямо в теле функции:
function Name takes nothing returns nothing
local unit u = GetTriggerUnit()
local unit s = GetSpellTargetUnit()
...
endfunction
21
Нужно определить какого типа переменные должна принимать верхняя функция и вместо
function myfunc_01 takes nothing returns nothing
нужно написать, например:
function myfunc_02 takes [parameter] {type}, [parameter] {type}, [parameter] {type}  returns nothing
Дальше в теле основной функции вызываешь верхнюю функцию и передаёшь в неё параметры:
call myfunc_01([parameter], [parameter], [parameter])

Лучше опиши что конкретно ты хочешь сделать. Если упомянул о хеше.
Принятый ответ
28
GF RaiseD, верхняя функция является действием триггера и твой способ не подходит

зависит от того что вызывает эту функцию
структуры/юзердата
в любом случае придётся использовать мозг и сообразительность
в случае их отсутствия лучше забить и пойти играть в доту с ботами
21
nvc123, скорее всего. Не знаю чего хочет автор. Предполагаю что ему нужно что-то вроде таймера.
23
Присвоить значение глобальной переменной внутри функции и тут же считать во внешней (сразу после вызова функции)?
P.S. а почему бы не воспользоваться returns?
Чтобы оставить комментарий, пожалуйста, войдите на сайт.