Добавлен
call IssueImmediateOrder( GetLastCreatedUnit(), "stomp" ) вот эта команда меняет значение в нутри глобалиной переменой как это возможно и почему Тип Unit

мне это не нужно я и сам могу это написать всё мне нужен был ответ на мой вопрос
проблема была решена но я не понимаю почему она смогла лешыца тригер который не как не взаимодействуеть с другим тригерам поменял в нём кое что то что не взаимодействуеть и всё стало норм
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
18
MATRITSA:
мне нужно что юнит не удалялся в переменой udg_Targer 0
Я выше написал магия ве какимто раком юнит из Target 0 в TrigerUnit перекачевряжылся
я могу лешыть проблему добавлением еше одного отряда но я хочю в проблеме разабраца
кастыли могут и помочи отсрочить неизбежное которое потом тока усилица
здесь всё очень запутанно, лучше такие вещи писать на jass
14
Окей если для тебя кажеца удобние пишы я лично Испытовую болишы трудности в запоминание написание команд
18
MATRITSA:
что вообще должна делать эта способность триггерная? Чтобы я знал что делать
14
Двигает TriggerUnitMass к целе и как тока до цели докаснуласи даёца стан и наносица урон
18
MATRITSA:
чтобы вызвать прыжок нужно написать "call jump (прыгающий юнит, юнит-цель)"
Не забудь поставить равкод твоего дамми юнита для стомпа (я там комментарий оставил)
Для сохранения нужен JNGP
Саму наработку кидай в кастом код карты
globals
    hashtable hash = InitHashtable()
    real jumpSpeed = 400 //Здесь можно задавать скорость прыжка
    real jumpDamage = 100 //Наносимый урон
endglobals

function RemoveStomp takes nothing returns nothing
    local timer t = GetExpiredTimer()
    local unit u = LoadUnitHandle(hash, GetHandleId(t), StringHash("stomp"))
    call RemoveUnit(u)
    call FlushChildHashtable(hash, GetHandleId(t))
    call DestroyTimer(t)
    set t = null
    set u = null
endfunction

function jumpMove takes nothing returns nothing
    local timer t = GetExpiredTimer()
    local unit u = LoadUnitHandle(hash, GetHandleId(t), StringHash("u"))
    local unit target = LoadUnitHandle(hash, GetHandleId(t), StringHash("target"))
    local unit stomp
    local location pU = GetUnitLoc(u)
    local location pTarget = GetUnitLoc(target)
    local real x = GetLocationX(pU) + jumpSpeed*0.02 * Cos(AngleBetweenPoints(pU, pTarget) * bj_DEGTORAD)
    local real y = GetLocationY(pU) + jumpSpeed*0.02 * Sin(AngleBetweenPoints(pU, pTarget) * bj_DEGTORAD)
    call SetUnitFacing(u, AngleBetweenPoints(pU, pTarget))
    if ((IsUnitInRange(u, target, 72) == true) or (GetUnitState(u, UNIT_STATE_LIFE) <= 0)) then
        //Там где 'hfoo' это равкод твоего дамми юнита который будет стомп юзать
        set stomp = CreateUnitAtLoc(GetOwningPlayer(u), 'hfoo', pU, 0)
        call IssueImmediateOrder(stomp, "stomp")
        call UnitDamageTargetBJ( u, target, jumpDamage, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_UNIVERSAL )
        call SetUnitTimeScale(u, 1)
        call SaveUnitHandle(hash, GetHandleId(t), StringHash("stomp"), stomp)
        call DestroyEffect(LoadEffectHandle(hash, GetHandleId(t), StringHash("effect")))
        call TimerStart(t, 5.00, false, function RemoveStomp)
    else
        call SetUnitPosition(u, x, y)
    endif
    call RemoveLocation(pU)
    call RemoveLocation(pTarget)
    set t = null
    set u = null
    set stomp = null
    set target = null
    set pU = null
    set pTarget = null
    set x = 0
    set y = 0
endfunction

function jump takes unit u, unit target returns nothing
    local timer t = CreateTimer()
    local effect e
    //Это спеэффект который прикрепится к твоему юниту
    set e = AddSpecialEffectTarget("Abilities\\Spells\\Undead\\Darksummoning\\DarkSummonTarget.mdl", u, "origin")
    //================================================
    call SaveEffectHandle(hash, GetHandleId(t), StringHash("effect"), e)
    call SetUnitTimeScale(u, 0)
    call SaveUnitHandle(hash, GetHandleId(t), StringHash("u"), u)
    call SaveUnitHandle(hash, GetHandleId(t), StringHash("target"), target)
    call TimerStart(t, 0.02, true, function jumpMove)
    set t = null
    set e = null
endfunction
14
мне это не нужно я и сам могу это написать всё мне нужен был ответ на мой вопрос
проблема была решена но я не понимаю почему она смогла лешыца тригер который не как не взаимодействуеть с другим тригерам поменял в нём кое что то что не взаимодействуеть и всё стало норм
Принятый ответ
Этот комментарий удален
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.