Решил написать и сразу перевести в нормальное состояние вот такой код.
Герой использует на союзнике способность, союзнику дается перерождение и вешается спецэффект на грудь( сияние типа броня) действует пока он жив. Когда умирает, то воскрешается и спецэффект удаляется. Все примитивно просто, но возникли большие проблемы в правильностью написания кода. Именно ошибки в самом синтаксисе
  • Ругается на то, что локальную u не видит, хоть она и объявлена.
  • Ругается на, что заменил условие что он не мертв, на
   return ( GetUnitState(u, UNIT_STATE_LIFE) <= 0 )
Код как он есть ниже. Заранее благодарю function
Trig_First_pit______________________2__________________________________________u_Conditions takes nothing returns boolean
    if ( not ( GetSpellAbilityId() == 'A08B' ) ) then
        return false
    endif
    return true
endfunction

function Trig_First_pit______________________2__________________________________________u_Func007001 takes nothing returns boolean
    return ( GetUnitState(u, UNIT_STATE_LIFE) <= 0 )
endfunction

function Trig_First_pit______________________2__________________________________________u_Actions takes nothing returns nothing
    local effect a
    local unit u
    set u = GetSpellTargetUnit()
      call UnitAddAbility( u,'A08C' )
      set bj_lastCreatedEffect = AddSpecialEffectTarget(u,"chest", "manaFlareTarget.mdx" )
    set a = bj_lastCreatedEffect
    loop
        exitwhen ( Trig_First_pit______________________2__________________________________________u_Func007001() )
        call TriggerSleepAction(RMaxBJ(bj_WAIT_FOR_COND_MIN_INTERVAL, 1))
    endloop
     call DestroyEffect (a)
    set u= null
    set a= null
endfunction

//===========================================================================
function InitTrig_First_pit______________________2__________________________________________u takes nothing returns nothing
    set gg_trg_First_pit______________________2__________________________________________u = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_First_pit______________________2__________________________________________u, EVENT_PLAYER_UNIT_SPELL_CAST )
    call TriggerAddCondition( gg_trg_First_pit______________________2__________________________________________u, Condition( function Trig_First_pit______________________2__________________________________________u_Conditions ) )
    call TriggerAddAction( gg_trg_First_pit______________________2__________________________________________u, function Trig_First_pit______________________2__________________________________________u_Actions )
endfunction

Ориентируюсь по образцу: Модель, виджет, точки крепления
Но я честно не знаю, как правильно присваивать спецэффект кодом именно с локальной!
Сам написал ответ и сам указал в коде по другому :D
Первый параметр - модель. Не юнит, а модель.
set bj_lastCreatedEffect = AddSpecialEffectTarget("manaFlareTarget.mdx", u, "chest")
Надоело уже страдать. Пусть будет как у Лоха через bj по другому я просто не могу понять!
call AddSpecialEffectTargetUnitBJ( "chest", u, "ManaFlareTarget.mdx" )
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
21
Там же есть локальная u
тоесть то, что это именно ЛОКАЛЬНАЯ переменная для тебя ничего не значит?
Почти все. Теперь только ругается на имя модели в приписывании эффекта
26
Там же есть локальная u
тоесть то, что это именно ЛОКАЛЬНАЯ переменная для тебя ничего не значит?
Почти все. Теперь только ругается на имя модели в приписывании эффекта
порядок аргументов в функции для слабых, понимаем
21
Там же есть локальная u
тоесть то, что это именно ЛОКАЛЬНАЯ переменная для тебя ничего не значит?
Почти все. Теперь только ругается на имя модели в приписывании эффекта
порядок аргументов в функции для слабых, понимаем
Каюсь, изменил. Что теперь не правильно?
Загруженные файлы
26
Там же есть локальная u
тоесть то, что это именно ЛОКАЛЬНАЯ переменная для тебя ничего не значит?
Почти все. Теперь только ругается на имя модели в приписывании эффекта
порядок аргументов в функции для слабых, понимаем
Каюсь, изменил. Что теперь не правильно?
порядок аргументов все еще для слабых

мне интересно, вы в случайном порядке забиваете аргументы? пока не заработает?
21
Там же есть локальная u
тоесть то, что это именно ЛОКАЛЬНАЯ переменная для тебя ничего не значит?
Почти все. Теперь только ругается на имя модели в приписывании эффекта
порядок аргументов в функции для слабых, понимаем
Каюсь, изменил. Что теперь не правильно?
порядок аргументов все еще для слабых

мне интересно, вы в случайном порядке забиваете аргументы? пока не заработает?
Ориентируюсь по образцу: Модель, виджет, точки крепления
21
а читать не пробовали? слышал помогает
Дословно он пишет
"Невозможно конвертировать строку в виджет в параметре "Имя модели, что прикрепить специальный эффект"
Вот как мне понять? Я все по порядку добавил же?
Загруженные файлы
26
а читать не пробовали? слышал помогает
Дословно он пишет
"Невозможно конвертировать строку в виджет в параметре "Имя модели, что прикрепить специальный эффект"
Вот как мне понять? Я все по порядку добавил же?
все еще не читаете что сами же написали в коде
21
а читать не пробовали? слышал помогает
Дословно он пишет
"Невозможно конвертировать строку в виджет в параметре "Имя модели, что прикрепить специальный эффект"
Вот как мне понять? Я все по порядку добавил же?
все еще не читаете что сами же написали в коде
Вам весело, но я честно не знаю, как правильно присваивать спецэффект кодом именно с локальной! Я не могу тупо оставить gui потому что мне нужна именно локалка для это этого кода. Мне нужен хотя бы один рабочий образец, как правильно делать в этом случаи, дальще я уже сориентируюсь по образцу
set bj_lastCreatedEffect = AddSpecialEffectTarget
26
а читать не пробовали? слышал помогает
Дословно он пишет
"Невозможно конвертировать строку в виджет в параметре "Имя модели, что прикрепить специальный эффект"
Вот как мне понять? Я все по порядку добавил же?
все еще не читаете что сами же написали в коде
Вам весело, но я честно не знаю, как правильно присваивать спецэффект кодом именно с локальной! Я не могу тупо оставить gui потому что мне нужна именно локалка для это этого кода. Мне нужен хотя бы один рабочий образец, как правильно делать в этом случаи, дальще я уже сориентируюсь по образцу
set bj_lastCreatedEffect = AddSpecialEffectTarget
да, весело, потому что прочесть порядок аргументов в функции не позволяет религия) это писец, докатились
21
а читать не пробовали? слышал помогает
Дословно он пишет
"Невозможно конвертировать строку в виджет в параметре "Имя модели, что прикрепить специальный эффект"
Вот как мне понять? Я все по порядку добавил же?
все еще не читаете что сами же написали в коде
Вам весело, но я честно не знаю, как правильно присваивать спецэффект кодом именно с локальной! Я не могу тупо оставить gui потому что мне нужна именно локалка для это этого кода. Мне нужен хотя бы один рабочий образец, как правильно делать в этом случаи, дальще я уже сориентируюсь по образцу
set bj_lastCreatedEffect = AddSpecialEffectTarget
да, весело, потому что прочесть порядок аргументов в функции не позволяет религия) это писец, докатились
Может я не туда смотрю? боевая единица, эффект, точка крепления, что не так?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.