AiDSeller
За здоровый образ жизни
offline
Опыт:
6,094Активность: |
Временный спецэффект
Вопрос таков: можно ли создать спецэффект, который со временем сам бы удалялся? Просто если некоторые не удалить, то они будут играть до бесконечности (Впрочем, даже если не проигрывается, то всё равно думаю что он никуда не исчез). Отслеживать каждый спецэффект через переменную немного напряжно. Так вот, можно ли каким-то образом сделать наподобие таймера истечения как у юнитов? Заранее спасибо. Работаю на GUI, War3, v.1.23. |
27.03.2011, 05:13 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
granderpro
offline
Опыт:
12,165Активность: |
ну тут без переменной никак , заноси в переменную запускай таймер и по истечении ремувай спецеффект |
27.03.2011, 05:40 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Extremator
offline
Опыт:
39,512Активность: |
Есть другой вориант, он канешно чуть прибавляет работы, но при этом даёт ещё несколько полезных функций для работы)))
Создай дамми с файлом модели нужного тебе спецэффекта... Ставишь дамми на нужно место и даёшь ему таймер жизни... +можно регулировать окрас/размеры/наклоны такого спецэффекта))) |
27.03.2011, 10:20 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
alexprey
познающий Unity
offline
Опыт:
68,501Активность: |
Extremator, а если этот эффект нужен на юните????
AiDSeller, если тебе надо чтобы спецэффект проигрался один раз, то осле добавления сразу удаляй его. Я тоже сперва думал что это бред пока не попробовал. Если же надо больше чем 1 раз, то тут нужно писать код. Для этого создаешь 3 массивные переменные. effects_e - эффект effects_time - реал effects_lifetime - реал effects_count - целое (не массив) дальше создаешь переодический триггер (лучше таймер) и там делаешь такой код Код:
а когда создаешь делаешь так Код:
Вот и все. Но имхо это будет глючно на гуи, в vjass можно сделать проще и более быстрее будет работать |
27.03.2011, 10:33 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Extremator
offline
Опыт:
39,512Активность: |
Цитата:
|
|
27.03.2011, 10:44 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
16GB
GhostOne User
offline
Опыт:
60,317Активность: |
а в чём разница в удалении абилы и эффекта тогда? |
27.03.2011, 10:47 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Extremator
offline
Опыт:
39,512Активность: |
16GB, спецэффект можно наложить на юнита 2 раза (а это может быть не желатьно...хотя и наоборот), и если спецэффек не запомнен в переменную, то его нельзя будет удалить (простым способом (на гуях))... А абилку всегда можно отбрать у юнита который ей владеть не должен... даже если он получил её случайно...ну там в случаи бага или ещё чего такого...
|
27.03.2011, 10:51 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AiDSeller
За здоровый образ жизни
offline
Опыт:
6,094Активность: |
alexprey, твой код не подходит, удалить триггер я и сам могу. Мне хотелось чтобы вручную его не надо было удалять, чтобы удалялся сам ;) |
27.03.2011, 11:27 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
alexprey
познающий Unity
offline
Опыт:
68,501Активность: |
AiDSeller, он сам удаляется... Явно ты не понимаешь в ГУИ =)
Таймер просто проверяет в цикле, если время превысило время жизин то он его ремувит САМММММ!!!!! |
27.03.2011, 11:31 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
AiDSeller
За здоровый образ жизни
offline
Опыт:
6,094Активность: |
alexprey:
Да ладно? Я тебе про другое, то что удаляется я уже вижу. Но это, опять-таки, переменные и массивы. Мне же нужен был способ как с юнитами: создал, установил таймер истечения и не паришься. |
27.03.2011, 13:28 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|