Delay (Wait)
|
|
FatalBlade | Дата: Четверг, 21 Апреля 2011, 00:24:24 | Сообщение # 1 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Вообщем у меня есть 2 скила... очень проблематичных. 1) - Charge - герой с разбегу наносит удар указанной цели, отталкивая её и нанося стан и урон. 2) - Molten Arrow - Герой выпускает стрелу которая станит, наносит урон и отталкивает цель. Сам эффект отталкивания настроен триггерно. То есть через какое то время цель отталкивается назад итд... Что бы вычислить само время полёта стрелы (или разбег героя) я использовал самую простую формулу в физике - Расстояние делённое на Скорость = Время. Wait ((Distance between MA_Caster and MA_Taker) / 1800.00) seconds В теории всё хорошо работает, но вот на практике... При дальности 900, стрела взрывается и юнит отталкивается чуть чуть пораньше чем надо. Если я увеличу время, то при дальности 100-200 отталкивание будет происходить слишком поздно. С Charge такая же фигня. На дальности 600 работает норм, на даьносьти 300 герой слишком далеко разбегается и отталкивание срабатывает поздно. Где то я слышал что функция Wait не очень актуальна для таких вычислений, потому что она ограничена перед слишком маленькими значениями. Правда ли это? И если да, есть ли какая нибудь альтернатива фуккции Wait?
|
|
|
|
Fox3 | Дата: Четверг, 21 Апреля 2011, 07:32:10 | Сообщение # 2 |
6 уровень
Группа: Проверенные
Сообщений: 247
Награды: 0
Репутация: 10
Блокировки:
| http://rghost.ru/5269138 - разбег, стун, толчёк а для лучницы, я делал уже подобное, но что-то найти не могу
|
|
|
|
SunCreep | Дата: Четверг, 21 Апреля 2011, 08:11:57 | Сообщение # 3 |
9 уровень
Группа: Проверенные
Сообщений: 1136
Награды: 0
Репутация: 141
Блокировки:
| FatalBlade, да,вейт тут не поможет.Тут отслеживается полёт стрелы.Но я не смогу вспомнить как именно.А вот добрые люди с хорошей памятью наверняка тебе помогут
|
|
|
|
16Gb | Дата: Четверг, 21 Апреля 2011, 08:17:20 | Сообщение # 4 |
6 уровень
Группа: Проверенные
Сообщений: 216
Награды: 1
Репутация: 61
Блокировки:
| стрелу надо делать юнитом и двигать до цели постоянно проверяя расстояние между ней и целью когда долетит делать действие
Сдохни от спидорака жопы, мразь.
Сообщение отредактировал 16Gb - Четверг, 21 Апреля 2011, 08:17:41 |
|
|
|
FkoFF | Дата: Четверг, 21 Апреля 2011, 08:29:38 | Сообщение # 5 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| 16Gb, это не обязательно, достаточно вычислять координатами, без какого либо определенного объекта (меньшая нагрузка), но суть та же, к тому же не дай бог цель будет двигаться - получится тот же убогий баг что с ультом лича в доте. Добавлено (21-04-2011, 08:29) --------------------------------------------- и да, вейт работает только на десятых и не ниже. Тоесть 0.23 он расценит как 0.20, 0.66 как 0.6, собственно у него так заложено.
|
|
|
|
FatalBlade | Дата: Четверг, 21 Апреля 2011, 10:16:00 | Сообщение # 6 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (FkoFF) достаточно вычислять координатами А что именно вычеслять, если не обьект? Добавлено (21-04-2011, 10:16) ---------------------------------------------
Quote (FkoFF) и да, вейт работает только на десятых и не ниже. Тоесть 0.23 он расценит как 0.20, 0.66 как 0.6, собственно у него так заложено. Есть альтернатива?
|
|
|
|
FkoFF | Дата: Четверг, 21 Апреля 2011, 11:12:46 | Сообщение # 7 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| Quote (FatalBlade) А что именно вычеслять, если не обьект? координатный путь, на джасс - просто записывать текущие пару координат и проверять, близко ли они к цели или нет, для этого ненадо создавать объект. Quote (FatalBlade) Есть альтернатива? таймеры и переодические триггеры с периодом меньше 0.1
|
|
|
|
FatalBlade | Дата: Четверг, 21 Апреля 2011, 11:27:20 | Сообщение # 8 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Quote (FkoFF) таймеры и переодические триггеры с периодом меньше 0.1 Создал таймер Countdown Timer - Start (Last started timer) as a One-shot timer that will expire in ((Distance between MA_Caster and MA_Taker) / 1800.00) seconds Так он его вообще игнорирует. Отталкивание начинается сразу после использования скила.
|
|
|
|
FkoFF | Дата: Четверг, 21 Апреля 2011, 12:17:32 | Сообщение # 9 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| FatalBlade, речь шла о таймерах на джассе где к таймеру можно прилепить ссылку на любой объект на карте и функцию которая будет происходить по истечению таймера.
|
|
|
|
FatalBlade | Дата: Четверг, 21 Апреля 2011, 12:29:14 | Сообщение # 10 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Я сделал на GUI 1 вопрос - Таймер надо обнулять каждый раз?Добавлено (21-04-2011, 12:29) --------------------------------------------- Я сделал таймер и впомогательный триггер
|
|
|
|
FkoFF | Дата: Четверг, 21 Апреля 2011, 12:47:03 | Сообщение # 11 |
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
| FatalBlade, говорю же, для гуи таймеры вообще не подходят. Вернее подходят но оочень плохо и для других абсолютно целей.
|
|
|
|
Fox3 | Дата: Пятница, 22 Апреля 2011, 07:37:44 | Сообщение # 12 |
6 уровень
Группа: Проверенные
Сообщений: 247
Награды: 0
Репутация: 10
Блокировки:
| Блин вот помню, что вычислял как FkoFF, но где пример. сегодня на ноуте гляну. Только не помню GUI или Jass
Сообщение отредактировал Fox3 - Пятница, 22 Апреля 2011, 07:38:09 |
|
|
|
Banzay89 | Дата: Пятница, 22 Апреля 2011, 11:32:58 | Сообщение # 13 |
9 уровень
Группа: Проверенные
Сообщений: 858
Награды: 1
Репутация: 77
Блокировки:
| Автор, выучт жасс и такие проблемы отпадут сразу
|
|
|
|
Fox3 | Дата: Пятница, 22 Апреля 2011, 13:26:36 | Сообщение # 14 |
6 уровень
Группа: Проверенные
Сообщений: 247
Награды: 0
Репутация: 10
Блокировки:
| нашёл. Вот наработка толкалки, подойдёт для стрелы
Сообщение отредактировал Fox3 - Пятница, 22 Апреля 2011, 13:27:09 |
|
|
|
FatalBlade | Дата: Пятница, 22 Апреля 2011, 13:46:34 | Сообщение # 15 |
10 уровень
Группа: Проверенные
Сообщений: 1523
Награды: 0
Репутация: 439
Блокировки:
| Fox3 Спс конечно, но я открыл тему по совсем другому вопросу. Отталкивание у меня уже есть. Даже с замедлением, то есть отталкиваясь назад, юнит постепенно замедляется, пока полностью не останавливается. У меня тут совсем другая проблема была, но я её уже решил, спомощью таймера и вспомогательного триггера, с событием Timer Expires.
|
|
|
|