XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
DesMonsters

offline
Опыт: 120
Активность:
Auto-Cast
Хочу сделать Спсобность Авто каст но у меня не получается через тригеры как мне его смастерить или его надо через джасс???
Старый 28.08.2013, 21:02
Anufis

offline
Опыт: 6,290
Активность:
Что вы пробовали делать и каков был результат?
Где примеры того, что вы пытались сделать?
Старый 28.08.2013, 21:54
Гигамон

offline
Опыт: 1,512
Активность:
Через джасс только, если нельзя через редактор объектов.
Я бы написал, но Anufis проводит над тобой воспитательую работу. :)
Старый 29.08.2013, 10:55
Extremator

offline
Опыт: 39,522
Активность:
Берёшь какой нить таргетовый авто-каст... например "проклятие", если это на врагов нужно юзать
При событии "юнит приводит в действие спелл" проверяешь что это "твоё проклятие", то снимаешь бафф и делаешь то что хочешь... вот те и авто-каст
Старый 29.08.2013, 14:43
ZLOY5

offline
Опыт: 912
Активность:
Extremator:
юнит приводит в действие спелл
не ловит автокаст
Старый 29.08.2013, 14:51
Extremator

offline
Опыт: 39,522
Активность:
ZLOY5:
не ловит автокаст
то что написано у меня - будет работать
Старый 29.08.2013, 15:02
Гигамон

offline
Опыт: 1,512
Активность:
Ладно. Создай две способности: одну - автокаст, у которой длительность воздействия 0.01 и которая никак не влияет (пустышка), вторую - твой скил, который ты хочешь сделать, но у него пусть стоимость маны будет ноль и без задержек. Задержки и стоимость маны, если надо, давай автокасту. И создай одного дамика. Дай ему способность "москиты", неуязвимку, убери у него тень и модель и на всякий случай сделай летающим. Создай триггер под названием "Auto cast" и влепи туда это:
» Код
function Trig_Auto_cast_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'Aslo'
endfunction

function Trig_Auto_cast_Actions takes nothing returns nothing
    local unit u
    local unit u1 = GetSpellTargetUnit()
    local location p = GetUnitLoc(GetSpellTargetUnit())
    call CreateUnitAtLoc(Player(PLAYER_NEUTRAL_PASSIVE), 'hfoo', p, 0.00)
    set u = bj_lastCreatedUnit
    call IssueTargetOrder(u, "polymorph", u1)
    call TriggerSleepAction(1)
    call RemoveUnit(u)
    call RemoveLocation(p)
    set u = null
    set u1 = null
    set p = null
endfunction

function InitTrig_Auto_cast takes nothing returns nothing
    set gg_trg_Auto_cast = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_Auto_cast, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( gg_trg_Auto_cast, Condition( function Trig_Auto_cast_Conditions ) )
    call TriggerAddAction( gg_trg_Auto_cast, function Trig_Auto_cast_Actions )
endfunction
Вместо "Aslo" напиши id способности автокаста, вместо "hfoo" - id дамика, вместо "polymorph" - то, что написано в РО в способности не автокасте в поле "Текст - Порядок строк: Включен".
Гигамон добавил:
Забыл одно. Дамику дай скил, который не автокаст.
Старый 29.08.2013, 16:24
Cosonic5
Моймозггоритогнем
offline
Опыт: 13,584
Активность:
» тут адекватный код

function Trig_Auto_cast_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'Aslo'
endfunction

function Trig_Auto_cast_Actions takes nothing returns nothing
    local unit u = GetSpellAbilityUnit()
    local unit u1 = GetSpellTargetUnit()
    local real x = GetUnitX(u1)
    local real y= GetUnitY(u1)
    local player p = GetOwningPlayer(u)
    local unit dammi = CreateUnit(p, 'hfoo', x, y 0.00)
    call IssueTargetOrder(dammi, "polymorph", u1)
    call UnitApplyTimedLife(dammi, 'BTLF', 1.00)
    set u = null
    set u1 = null
    set p = null
    set dammi = null
endfunction

function InitTrig_Auto_cast takes nothing returns nothing
    local integer index = 0
    set gg_trg_Auto_cast = CreateTrigger(  )
    loop
        call TriggerRegisterPlayerUnitEvent(gg_trg_Auto_cast, Player(index), EVENT_PLAYER_UNIT_SPELL_EFFECT, null)
        set index = index + 1
        exitwhen index == bj_MAX_PLAYER_SLOTS
    endloop
    call TriggerAddCondition( gg_trg_Auto_cast, Condition( function Trig_Auto_cast_Conditions ) )
    call TriggerAddAction( gg_trg_Auto_cast, function Trig_Auto_cast_Actions )
endfunction
Extremator, узнать активировал юнит автокаст можно только отловом приказа.
а то что приводит способность, это уже одно применение, а при включенном толку не будет если он будет наносить урон.
Старый 29.08.2013, 16:49
Гигамон

offline
Опыт: 1,512
Активность:
Cosonic5, да, в нем на 0,00001% адекватности больше. xD
Старый 29.08.2013, 16:52
DioD

offline
Опыт: 45,134
Активность:
свои собственные попытки представьте штоле?
Старый 29.08.2013, 17:25
Cosonic5
Моймозггоритогнем
offline
Опыт: 13,584
Активность:
Гигамон, ну по твоим меркам да...
Старый 29.08.2013, 19:08
Extremator

offline
Опыт: 39,522
Активность:
Cosonic5:
Extremator, узнать активировал юнит автокаст можно только отловом приказа.
а то что приводит способность, это уже одно применение, а при включенном толку не будет если он будет наносить урон.
Причём здесь приказ и урон?
Если у юнита был выставлен авто-каст на скилле и он юзанёт его - то событие пройдёт, как при использовании любого активного скилла.
Старый 29.08.2013, 19:45
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,324
Активность:
Extremator:
Если у юнита был выставлен авто-каст на скилле и он юзанёт его - то событие пройдёт, как при использовании любого активного скилла.
Исключение это стрелы, там хоть ты лопни, событие юнит приводит способность в действие будет лишь если кастануть стрелы как скилл через хоткей а не через автоатаку...
Для этого нужна система отлова урона.
Старый 30.08.2013, 04:17
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,696
Активность:
Extremator:
Причём здесь приказ и урон?
this

Да стрелы не ловятся, если автокастом при атаке мутятся.
Вот только автору это ли надо? Если нужен модификатор атаки-автокаст - то можно ловить приказ на автокаст и давать сферу молний, которая будет давать нужный эффект.

А автору как раз скорее нужно что-то по типу кровожадности либо кёрса, если на врагов, либо власть порчи если вне боя и там уже лепить эффект.
Старый 30.08.2013, 13:16
MegaBlax

offline
Опыт: 2,352
Активность:
Если тебе нужен дамагающий авто-скилл, то вот тебе примерчик.
Прошу не писать мне о том, как плохо я ее сделал. Я всего лишь хочу показать как можно сделать.
Прикрепленные файлы
Тип файла: w3x Auto-Cast.w3x (25.8 Кбайт, 10 просмотров )
Старый 30.08.2013, 14:29
DesMonsters

offline
Опыт: 120
Активность:
Спосибо вам всем!Кажется твой Auto-Cast работает немно поправлю и воаля Спасибо!!!
Старый 30.08.2013, 17:24
Extremator

offline
Опыт: 39,522
Активность:
quq_CCCP:
Исключение это стрелы,
А кто говорил про стрелы? оО
NatureKid:
Да стрелы не ловятся, если автокастом при атаке мутятся.
Да кто сказал про стрелы?! оО
Extremator добавил:
MegaBlax:
Прошу не писать мне о том, как плохо я ее сделал. Я всего лишь хочу показать как можно сделать.
Да это и правда ооооооочень кривой пример :DDD
стрелы выкл, делаю атаку... и... когда снаряд уже в воздухе... делаем вкл авто каст - урон влетает уже триггерный
сново выкл, атакую, вкл - сново урон триггерный... при этом самой стрелой так и не ударил.. .и маны не потратил
Старый 30.08.2013, 18:38
MegaBlax

offline
Опыт: 2,352
Активность:
Extremator, кароче забей, это была лишь кривая попытка ;D
MegaBlax добавил:
Системка на столько убога, что если там вписать UnitDamageTarget то это сразу вызовит дисинхрон.
Старый 31.08.2013, 05:11
Гигамон

offline
Опыт: 1,512
Активность:
Extremator:
А кто говорил про стрелы? оО
Вот почему в вопросах надо всегда уточнять. И это, наверно, одна из причин такого ответа Ануфиса. На его вопрос надо было ответить!
DesMonsters, вот стрела автокаст сразу в примере чтоб без лишних вопросов.
Прикрепленные файлы
Тип файла: w3x Ovcestrela.w3x (18.1 Кбайт, 9 просмотров )
Старый 31.08.2013, 13:06
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 20:38.