Добавлен Sparrow
Здравствуйте суть моей проблемы в том что когда я обучаю юнита с помощью вот такого кода:
//===========================================================================
function Trig_Tratata_Func002Func007C takes nothing returns boolean
if ( not ( udg_Iron_ore > 0 ) ) then
return false
endif
return true
endfunction
function Trig_Tratata_Func002C takes nothing returns boolean
if ( not ( GetTrainedUnitType() == 'hrif' ) ) then
return false
endif
return true
endfunction
function Trig_Tratata_Func003C takes nothing returns boolean
if ( not ( GetTrainedUnitType() == 'hfoo' ) ) then
return false
endif
return true
endfunction
function Trig_Tratata_Actions takes nothing returns nothing
call RemoveUnit( GetTrainedUnit() )
if ( Trig_Tratata_Func002C() ) then
call RemoveItem( GetItemOfTypeFromUnitBJ(gg_unit_hbla_0000, 'rat6') )
call UnitAddItemByIdSwapped( 'rat3', gg_unit_hbla_0000 )
call SetPlayerUnitAvailableBJ( 'hrif', true, Player(0) )
call SetPlayerUnitAvailableBJ( 'hfoo', true, Player(0) )
call EnableTrigger( gg_trg_Esle )
if ( Trig_Tratata_Func002Func007C() ) then
call IssueTrainOrderByIdBJ( gg_unit_hbla_0000, 'hrif' )
else
call DoNothing( )
endif
else
call DoNothing( )
endif
if ( Trig_Tratata_Func003C() ) then
call RemoveItem( GetItemOfTypeFromUnitBJ(gg_unit_hbla_0000, 'rat3') )
call RemoveItem( GetItemOfTypeFromUnitBJ(gg_unit_hbla_0000, 'rat3') )
call RemoveItem( GetItemOfTypeFromUnitBJ(gg_unit_hbla_0000, 'rat3') )
call UnitAddItemByIdSwapped( 'frgd', gg_unit_hbla_0000 )
call SetPlayerUnitAvailableBJ( 'hrif', true, Player(0) )
call SetPlayerUnitAvailableBJ( 'hfoo', true, Player(0) )
call EnableTrigger( gg_trg_Esle )
else
endif
endfunction
//===========================================================================
function InitTrig_Tratata takes nothing returns nothing
set gg_trg_Tratata = CreateTrigger( )
call TriggerRegisterUnitEvent( gg_trg_Tratata, gg_unit_hbla_0000, EVENT_UNIT_TRAIN_FINISH )
call TriggerAddAction( gg_trg_Tratata, function Trig_Tratata_Actions )
endfunction
//===========================================================================
То после этого я не могу вытаскивать или что либо делать с предметами обучающего
Конкретно скажу что это происходит после этого фрагмента:
Конкретно скажу что это происходит после этого фрагмента:
//===========================================================================
if ( Trig_Tratata_Func002Func007C() ) then
call IssueTrainOrderByIdBJ( gg_unit_hbla_0000, 'hrif' )
else
call DoNothing( )
endif
- Почему это происходит?
- Как это исправить?
Принятый ответ
Опиши что ты хочешь сделать.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Sparrow
т.е обучение какого юнита происходит а что произойдет после уже не имеет значения
Проще скажу:
После обучения он не появляется на карте а сразу удаляется т.к. юнит мне не нужен
=============================================================
Я нашел как это сделать просто добавил вайт перед той злорадной функцией но это не красиво.
Это я к тому что вайты не предлагать
хотя качество написания тоже важно
платят как правило за исходник
а за индуский код в исходнике ничего не платят
Отредактирован nvc123
на фрилансе да
за результат
а если командное задание то за индуский код могут уволить
а не костыль
darkowlom, и это кстати и есть стандартный триггер конвертированный в текст