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

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

Закрытая тема
 
DaRDE1
PetroDevelopersTeam
offline
Опыт: 2,808
Активность:
DeathPact
Собственно проблема в том что мне нужно чтобы способность "смертельный союз" на развитие у абадона работала не только на нежить но и на другие расы, как это сделать, работает сейчас только на нежить.
Старый 26.03.2010, 16:53
Stefler
MCA
offline
Опыт: 10,457
Активность:
DaRDE1, "канал" +тригеры!
По другому (настроить цели у этой способности), на сколько мне известно, никак!
Старый 26.03.2010, 16:58
Light or Dark

offline
Опыт: 7,275
Активность:
а в "целях" не поставишь?)
Старый 26.03.2010, 17:39
16GB
GhostOne User
offline
Опыт: 60,317
Активность:
цели нежить нет)
Старый 26.03.2010, 17:41
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
DaRDE1, делай тригерно, так проще
Старый 26.03.2010, 17:56
HTC
Мечта - та же реальность
offline
Опыт: 23,885
Активность:
DaRDE1:
на развитие у абадона
о боже мой...
Для этого подойдет любая абилка-таргет + пара триггеров. Ставишь урон 999999999.9, меняешь там описание и т.д. и т.п., и запускаешь триггер, который взависимости от уровня способности восстанавливал бы жизни дк.
Событие - юнит направляет способность
Условие - данная способность = DeathPact
Действие -
тут химичишь с переменными
(заносишь цель и кастера туда, если хочешь с эффектом, то еще и эффект)
if/then/else
  • если уровень кастуемой способности = 1
то: set жизьки +300 например
иначе: if/then/else
  • если уровень кастуемой способности = 2
то: set жизтьни +500
иначе: if/then/else
ну короче, по такой же схеме, сколько надо уровней, столько так делать и будешь.
теперь удаляем значения переменных.
Не помню, названия триггеров, но суть понятна.
Старый 26.03.2010, 18:05
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
HTC, не надо такую атаку ставить иначе тек. кол-во жизней у таргета не узнаешь
Старый 26.03.2010, 21:27
HTC
Мечта - та же реальность
offline
Опыт: 23,885
Активность:
King_Ksel, видел работу death pact? Убийство цели и пополнение своего здоровья.
Старый 26.03.2010, 22:23
DaRDE1
PetroDevelopersTeam
offline
Опыт: 2,808
Активность:
HTC, Дело в том что у меня не герой, а здание, у него нет "уровней" абилки а идет подсчет от полных хп убиваемой цели.
DaRDE1 добавил:
16GB, в целях нет "нежить- нет и подобного"
Старый 27.03.2010, 08:30
FunkieFoO

offline
Опыт: 7,159
Активность:
смертельный союз действует только на нежить и нужно настраивать самих юнитов, а не цели спелла
Старый 27.03.2010, 08:49
DaRDE1
PetroDevelopersTeam
offline
Опыт: 2,808
Активность:
FunkieFoO, В том то и дело что пришлось делать это у "ночных эльфов" по другому никак, но у бони в доте вроде бы все путем
Старый 27.03.2010, 09:02
XOR

offline
Опыт: 38,159
Активность:
Старый 27.03.2010, 11:13
Doc

offline
Опыт: 63,163
Активность:
DaRDE1, если ты мог заметить, то у "бони" еще и текст плавающий появляется, так что там все триггерно.
Старый 27.03.2010, 11:25
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
HTC, а че тригерно юнита не убить????

King Ksel добавил:
Дело то пяти минутное. За основу брал Молот бурь, можно и другое
» раскрыть

Код:
function Trig_das_Conditions takes nothing returns boolean
 return GetSpellAbilityId() == 'A000'
endfunction

function Trig_das_Actions takes nothing returns nothing
 local unit caster = GetSpellAbilityUnit()
 local unit target = GetSpellTargetUnit()
 call SetUnitState(caster,UNIT_STATE_LIFE,GetUnitState(caster,UNIT_STATE_LIFE)+GetUnit  State(target,UNIT_STATE_LIFE))
 call KillUnit(target)
 set caster = null
 set target = null
endfunction

//===========================================================================
function InitTrig_das takes nothing returns nothing
    set gg_trg_das = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_das, EVENT_PLAYER_UNIT_SPELL_CAST )
    call TriggerAddCondition( gg_trg_das, Condition( function Trig_das_Conditions ) )
    call TriggerAddAction( gg_trg_das, function Trig_das_Actions )
endfunction

Старый 27.03.2010, 11:57
Doc

offline
Опыт: 63,163
Активность:
King_Ksel, убейся, фейл.
function Trig_das_Actions takes nothing returns nothing
call SetUnitState(GetTriggerUnit(),UNIT_STATE_LIFE,GetUnitState(GetTriggerUnit(),UNIT_STATE_LIFE)+GetUnit​State(GetSpellTargetUnit(),UNIT_STATE_MAX_LIFE))
//call KillUnit(target) также вместо этого настраиваем абилку так, чтобы она убивала
endfunction
Старый 27.03.2010, 12:16
TheArthas
ВИD
offline
Опыт: 499
Активность:
Создаёшь скилл-пустышку, например, на основе "Перст смерти", ставишь урон 0, потом создаёшь триггер, который показан на скрине (там для 1 уровня, для последующих уровней сделаешь проверку на уровень и множитель к прибавке здоровья).

Отредактировано TheArthas, 27.03.2010 в 14:34.
Старый 27.03.2010, 12:49
Ranam

offline
Опыт: 3,241
Активность:
TheArthas, если уж использовать "Перст смерти" то поставить там урон 999999..999. Тогда на союзном юните засчитается дени, а на вражеском - убийство(функция kill - самоубийство, насколько мне помниться).
И вообще для дамми используют "канал". Если автор не сможет использовать сриншот для создания скила то ему стоит заглянуть в раздел статей...
Старый 27.03.2010, 17:34
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
DoctorGester, Ranam, да но если настроить в спеле убивание, то мы не сможем записать кол-во жизней таргета
Старый 27.03.2010, 19:00
Master_chan
Полуночный командир
offline
Опыт: 15,660
Активность:
Если поставить урон 999999 то придется фиксить Эмпатию (если конечно она используется), иначе всех залинкованых юнитов мгновенно убьет.
Старый 27.03.2010, 19:58
TheArthas
ВИD
offline
Опыт: 499
Активность:
Ranam, в чём-то ты и прав. Если поставить персту дамаг 9999999 и добавить алли в цели, то, как говорил King Ksel, не получится записать кол-во жизней цели. Но так как событие "Начинает применять способность", а не "Приводит способность в действие", то можно поставить небольшую задержку каста перса и за это время можно отследить хп цели. Тогда действие Kill Target of ability beitng cast можно нужно удалить.
Master_chan, надеюсь, что автор не юзает Эмпатию, или же ему придётся юзать триг на скрине.
Старый 27.03.2010, 20:57
Закрытая тема

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

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

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

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



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