Всем привет!
Есть ли способ прибавить +2 секунды к таймеру существования призванного юнита относительно его текущей жизни?
Например, мне нужно, чтобы в определённой области все вызванные существа (элементали, волки, воскрешённая нежить и т. д.) каждые несколько секунд с определённой вероятностью продлевала своё существование на 2-3 секунды. При этом я не должен ориентировать на тип юнита, так как призванным по факту может быть любой тип (например - если он воскрешён).
Также нужно чтобы при призыве юнита с некоторой вероятностью его таймер существования увеличивался на 10-15 секунд относительно стандартного значения.
PS - если нужно создавать свою кастомную систему - то это мимо. Я стараюсь реализовывать механики, которые можно сделать с минимальными усилиями. Такая приоритезация задач.
PSS Если других решений не будет - то воспользуюсь костылём.
Костыль заключается в том, что вместо добавления таймера существования, и ставлю их таймеры на паузу на нужное время, после чего снимаю с паузы.
Математически эффект тот же, но с точки зрения UX может вызывать путаницу и недопонимание.

konvan5, спасибо за отзыв! Понял, что мне нужно в вопросе уточнить приоритеты на создание своих систем. Если других решений не будет - то воспользуюсь костылём.
Костыль заключается в том, что вместо добавления таймера существования, и ставлю их таймеры на паузу на нужное время, после чего снимаю с паузы.
Математически эффект тот же, но с точки зрения UX может вызывать путаницу и недопонимание.
`
ОЖИДАНИЕ РЕКЛАМЫ...
25
Создавать свою систему времени существования юнитов разве что. На стандартное, указанное в РО, ты триггерно не повлияешь.
Ответы (2)
17
konvan5, спасибо за отзыв! Понял, что мне нужно в вопросе уточнить приоритеты на создание своих систем. Если других решений не будет - то воспользуюсь костылём.
Костыль заключается в том, что вместо добавления таймера существования, и ставлю их таймеры на паузу на нужное время, после чего снимаю с паузы.
Математически эффект тот же, но с точки зрения UX может вызывать путаницу и недопонимание.
Принятый ответ
28
Cancel, в южапи и мемзаке есть функции для этого, может на рефе тоже имеются
23
Можно убрать у вызванных через абилки юнитов время жизни, и триггерно вешать на них таймер жизни, set (или add, точно не помню как он в гуи называется) expiration timer, 'BTLF' с нужным временем, ловить саммонов соответственно через enters region
Ответы (4)
25
EugeAl, было же сказано, что можно потом еще менять это время)
28
konvan5, а что будет если повесить новый таймер истечения с тем же равкодом?
23
konvan5, a вот не знаю, можно ли поменять время подобного таймера, или добавится ещё один, такой же)
UnitApplyTimedLife - единственная функция, и второй подобной нет )
25
rsfghd, я не тестил, но даже если заменит (перезапустит) прошлый таймер, то все равно мы не знаем, когда прошлый начался, чтобы добавить к оставшемуся времени 2 секунды. Только если не глобальный контроль времени ведется и выдача таймеров, что не гибки и вроде автору не так надо.
32
Свой таймер жизни призыванных делать, стандартный таймер жизни ты не удалишь и не изменишь, юнит мгновенно умрет если удалить бафф таймера жизни или еще добавить.
На мемхаке был способ удаления таймера жизни, но он сложный...
23
Единственное, что тебе светит - это кастомная система на обычных таймерах с визуализацией через прогресс-бары.
Я много лет не открывал редактор варкрафта, но видится мне это как банальная переменная r, в которую ты заносишь добавленное время. Таймер, по истечению, проверяет если r > 0 то запускает новый таймер на это время и обнуляет переменную. Если r <= 0 то убивает юнита.
А столбику прогресс-бара логично добавлять полоску сразу, как прокает твоё АоЕ, для лучшей визуализации.
А если добавить еще какой-то вспыхивающий голубой эффект на юните и вылетающую циферку (типа +2.6s) - будет прям красиво.
А главное - никаких костылей.
Ответы (1)
17
avuremybe, спасибо за ответ.
По возможности я стараюсь экономить силы и время. Если фича требует для своей реализации больше времени, чем полноценная игровая механика, то тут выбор между тем, чтобы отказаться от фичи или сделать её с костылём, экономящим время.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.