Добрый вечер.
hashtable HH = InitHashtable()
function MyCode takes nothing returns nothing
  unit u = CreateUnit(Player(0),'hpea',0,0,0)
  effect e = AddSpecialEffectTarget("...", u, "chest")
  integer id = GetHandleId(u)
  integer ide = GetHandleId(e)
  
  SaveUnitHandle(HH,id,0,u) // сохраняем юнита
  printi(GetHandleId(LoadUnitHandle(HH,id,0))) // -> id
  SaveEffectHandle(HH,id,0,e) // сохраняем эффект
  printi(GetHandleId(LoadUnitHandle(HH,id,0))) // -> 0
  
  printi(GetHandleId(LoadEffectHandle(HH,id,0))) // -> ide 
  SaveUnitHandle(HH,id,0,u) // сохраняем юнита
  printi(GetHandleId(LoadEffectHandle(HH,id,0))) // -> 0
  
  printi(GetHandleId(LoadUnitHandle(HH,id,0))) // -> id
endfunction
Так и должно быть?

Принятый ответ

Если кратко, то да. Если подробно, то функции Save*Handle являются ссылкой на SaveWidgetHandle и поэтому их нужно сохранять под разными индексами.
`
ОЖИДАНИЕ РЕКЛАМЫ...
3
29
4 года назад
3
Если кратко, то да. Если подробно, то функции Save*Handle являются ссылкой на SaveWidgetHandle и поэтому их нужно сохранять под разными индексами.
Принятый ответ
3
28
4 года назад
3
Хетаблица по конкретным ключам x, y может одновременно хранить значения следующих типов: real, integer, boolean, string, handle. code и nothing хранить нельзя.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.