Добавлен TeX13
Только начинаю писать на Jass. И сразу не понимаю, как работает блок if:
далее мой код (почему-то после условие срабатывает только одно действие):
далее мой код (почему-то после условие срабатывает только одно действие):
опыт за героя
function opit_za_geroya takes nothing returns nothing
if ( IsUnitType(GetTriggerUnit(), UNIT_TYPE_HERO) == true ) then
call AddHeroXPSwapped( ( GetUnitLevel(GetTriggerUnit()) * 25 ), GetKillingUnitBJ(), true )
call CreateTextTagUnitBJ( "TRIGSTR_1881", GetTriggerUnit(), 0, 10.00, 100.00, 100.00, 100.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 64, 90 )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 3.00 )
else
endif
endfunction
function opit_za_geroya takes nothing returns nothing
if ( IsUnitType(GetTriggerUnit(), UNIT_TYPE_HERO) == true ) then
call AddHeroXPSwapped( ( GetUnitLevel(GetTriggerUnit()) * 25 ), GetKillingUnitBJ(), true )
call CreateTextTagUnitBJ( "TRIGSTR_1881", GetTriggerUnit(), 0, 10.00, 100.00, 100.00, 100.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 64, 90 )
call SetTextTagPermanentBJ( GetLastCreatedTextTag(), false )
call SetTextTagLifespanBJ( GetLastCreatedTextTag(), 3.00 )
else
endif
endfunction
===========================================================================
смерть героя
function InitTrig_Smert_Geroya takes nothing returns nothing
set gg_trg_Smert_Geroya = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Smert_Geroya, EVENT_PLAYER_UNIT_DEATH )
call TriggerAddAction( gg_trg_Smert_Geroya, function opit_za_geroya )
endfunction
смерть героя
function InitTrig_Smert_Geroya takes nothing returns nothing
set gg_trg_Smert_Geroya = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Smert_Geroya, EVENT_PLAYER_UNIT_DEATH )
call TriggerAddAction( gg_trg_Smert_Geroya, function opit_za_geroya )
endfunction
Принятый ответ
Vlod:
Спасибо, ребята. Вся проблема была в текстовой переменной, хотя я в гуи ввел банальные "111". Не знаю, как объяснить, до того как добавил действие прибавление опыта - это сообщение работало. Сейчас просто стер переменную и написал в ручнуюPT153, у меня его код корректно выполняется, если в переменной TRIGSTR_1881 действительно текст, вот пруф 1.26а
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Если условие истинно, то выполняется первый блок, если нет, то выполняется блок кода после else.
PT153: Проблема в том, что выполняется только первое действие после оператора if, остальные опускаются
блок кода если истинно
else
блок кода если ложно
endif