bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
On Damage Event Template
Что это?Это кусок кода, который можно использовать в случаях, где надо совершить действия над воинами, при получении урона.
» Как оно работает?
При атаке, атакованный юнит проверяется на наличие в глобальной группе. Если он внутри ее, то ничего не делается, иначе мы добавляем его в группу и регистрируем событие на получение урона, относительно того воина. При смерти воина, если он находится в группе, удаляем его оттуда. ИспользованиеНаработка требует Jass New Gen Pack
Создаете триггер с произвольным именем, вставляете шаблон, задаете свои условия, свои действия... используете.
» шаблон
При редактировании кода, следует помнить что воин который получил урон - GetTriggerUnit(), а воин который нанес урон - GetEventDamageSource().
ЗаключениеНадеюсь это кому то поможет, спасибо за внимание. По возможности, указывайте автора, при использовании. Отредактировано bee, 12.05.2010 в 14:08. |
09.05.2010, 13:32 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YellowStar
poon
offline
Опыт:
15,144Активность: |
bee, чем лучше уже имеющихся систем? Ничем. А собсно зачем оно тогда? |
09.05.2010, 15:22 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
буржуские системы слишком громоздкие, мне так кажется имхо - такой способ удобнее всего, и не потому, что его сделал я а нужна причина? + легко импортитовать |
09.05.2010, 15:33 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
respect_gg
offline
Опыт:
3,650Активность: |
Сори за тупой вопрос :) Но все же, а как вставить еще одно условие ?)) Я просто еще не оч хорошо в этом шарю, но вот пытаюсь разобраться. Одно нужное условие поставил, действия тоже. Все работает прекрасно, но нужно еще одно условие, но вот не знаю как его туда вставить :)) |
12.05.2010, 13:23 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sidhe
Unity3D engine
offline
Опыт:
7,721Активность: |
respect_gg
в действия уже непосредственно пишешь: if параметры условия (and если понадобиться) then //тут твои действия входящие в условие endif по теме ну вроде бы не плохо, порадовало то, что не юзаешь хеш З.Ы. не только буржуйские системы "больше" |
12.05.2010, 13:40 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
А если урон нанесён заклинанием? |
12.05.2010, 13:54 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Sidhe
Unity3D engine
offline
Опыт:
7,721Активность: |
ZeToX2007, не важно, сам факт наличие полученного урона уже сработает триггер
|
12.05.2010, 14:01 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Sidhe:
Несработает, если до этого этот юнит небыл атакован |
12.05.2010, 14:04 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
respect_gg:
в функции OnDamageConditions, после return вводи свои условия, перечисление разделяется 'and'
например
ZeToX2007, триггер срабатывает на получение любого урона любым юнитом.
Добавил инфу, как это работает. ZeToX2007, щяс понял что ты имел ввиду. Ну тогда или я перепишу шаблон или у некоторых способностей будет маленький баг. Но все же то, что я сделал расчитанно на быстрое добавление нужной весчи, в основном на атаку. Отредактировано bee, 12.05.2010 в 14:12. |
12.05.2010, 14:05 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
|
12.05.2010, 14:11 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
Фейл. Система детский лепет, делается за 3 минуты. Если юнита до этого не атакован то событие не сработает. Неверно само построение тригера, функция одна на всех, неудобно. |
12.05.2010, 14:11 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
bee
vjass.optimizer
offline
Опыт:
16,615Активность: |
DoctorGester:
знаю. док, ты же умный человек, можешь написать систему покруче, НО есть люди, которые не могут, для них и система в будущем, скорее всего этого не произойдет, но если произойдет, то я исправлю этот баг, мне просто немного времени нужно, вечерком за чашкой чая |
12.05.2010, 14:14 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
DoctorGester:
юзай cJass.
ZeToX2007 добавил:
Лучше всего делать отлов урона на cJass.
вот, вроде всё. |
12.05.2010, 14:22 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Doc
offline
Опыт:
63,163Активность: |
Я не говорю что система плохая. Нужно лишь поправить событие и убрать приватность тригера чтобы в него можно было добавлять свои кондишны. Ахах зетокс смешной, я такую систему без багов на гуи делал, не смеши своим сж, достаточно добавить событие вхождения в регион. |
12.05.2010, 15:01 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Rewenger
The culprit will not die
offline
Опыт:
35,273Активность: |
Как будто это позитивно скажется на быстродействии и полезности для малоподкованной (НО есть люди, которые не могут, для них и система) в jass аудитории. |
12.05.2010, 17:20 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|