Сейчас 18:27:44 Суббота, 23 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
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.


 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz