Не может. У всего происходящего есть своя последовательность. Затереть юнита инициировавшего ивент не так уж и просто, но способы есть. В основном все проблемы с потерей такого юнита сводятся к тому что сам вэйт ни при чём, а всему виной каша идущая до/после.
По поводу вэйта - если уж не нравится стандартный, то как вариант, сварганить и юзать что-то на подобии этого:
function WAIT_EX takes real s returns nothing
local timer t = CreateTimer()
call TimerStart(t,s,false,null)
loop
call TriggerSleepAction(s)
exitwhen TimerGetRemaining(t) == 0.
endloop
call DestroyTimer(t)
set t = null
endfunction
Ты вот ссылаешься на "конструктед структур", а ты знаешь какой именно это юнит? выведи на экран его имя.
Ты отдаёшь конкретному юниту приказ тренить юнита, а он там вообще есть? тоже надо проверять
Если у тебя что-то не срабатывает - ищешь конкретно то место где происходит ступор, расставляешь вывод текстов с именами юнитов и прочего. И тут же видишь что и где идёт не правильно.
Надо раскрыть функцию спавна андедов и посмотреть каким именно образом там меняется здание (рудник) и что делается попутно. А так вообще думаю тебе хватит простой замены юнита, через реплейс (есть такая функция - замена юнита с сохранением параметров хп/мп)
ну я и посчитал, точнее excel за меня разложил всё
Мб ты тоже попробуешь посчитать прежде ? )
Поэтому базовую скорость и множитель замедления надо подкручивать
и как ты собрался подкручивать множитель?
Подкручивая базовую скорость с такой формулой ты никогда не добьёшься желаемого
Ну вот я поставил s9. - этого мало, число уходит в 0 гораздо раньше нужного.
Подкрутил до s12. - лучше, но всё ещё мало.
Подкрутил до s18. - ещё лучше, но движение менее плавное стало.
Подкрутил множитель до .94 - стало нормально.
При скорости 2.064 дистанция падает на 0.339 а потом до 0 = таймер паузится.
Вот я и не добился желаемого подкручивая множители... вообще ни разу.
Сделай базовую скорость толчка, например set Speed = 9.00
Запиши дистанцию толчка, например set Distance = 250.00
Дальше заводи таймер на 0.03 сек и каждый раз уменьшить Speed за счёт умножения его на значение от 0.94 до 0.96
Например так set Speed = Speed * 0.96
После чего уменьшай дистанцию на это число set Distance = Distance - Speed Тут же можешь двигать самого юнита от его текущей позиции, под нужным углом, на расстояние записанное как Speed.
Ну а в конце спрашивай есть ли смысл считать ещё раз if Distance < Speed * 0.5 then Обычно если можно пройти хотя бы половину, то я оставляю ещё тик. Хотя при этом его можно обрезать, что б в итоге не превысить общую дистанцию В самом начале:
А его и не надо сбрасывать, просто нужно минимизировать задержку перед следующим ударом. Это и делается за счёт накрутки скорости атаки. Но причём здесь Вивер - вообще не понятно, ибо там изначально другая механика.
А не проще повесить крит с двойным уроном и шансом выпадения?
Нет не проще, потому что суть (смысл) предмета как раз не в том что бы удвоить урон, а в том что бы провести повторную активацию (или возможность) всех атакующих эффектов.
Если у тебя на первый удар не сработал баш, но сработала сабля, то на второй удар (от сабли) уже может сработать баш. Например у Урсы это вызовет получение целью 2-го стека от пассивки. А при такой атаке Сларк может ДВА раза спереть статы врага, и смысл даже не в уроне (хотя урон имеет смысл всегда). И таких примеров куча.
В идеале, надо в момент замаха проверять шанс на срабатывание эффекта (если предмет есть), и делать пометку для этой атаки что она будет двойной. После нанесения урона такой атакой надо сбросить КД атаки (в идеале) или просто повысить скорость атаки героя (через абилку перчатки с +9999% AS). После чего нужно дождаться 2й атаки (с этим бонусом скорости) и забрать его, либо выждать около секунды и снять бонус (что бы он не мог сработать на другую атаку спустя время, если эту прервать специально). При этом КД предмета считать нужно (отдельно). И ещё, если я не ошибаюсь, в момент выдачи ускорения нужно обездвижить цель (эффект там такой).
В части случаев этого будет более чем достаточно, но не всегда.
У меня этот момент решается по своему (как вариант): сделана своя система орбов, в которой индификатор атаки с руки можно повесить специально перед нанесением любого урона, тем самым заставляя всякие паувер-вэйвы башить/вампириться от причиняемого урона. Таким образом я могу просто посчитать шанс (как для башера) и специально нанести сверху 0 урона с галочкой модификатора атаки (т.е. что этот урон якобы от руки героя наносится), и таким образом если у героя будет Башер, то игра будет ДВА раза считать его шанс.
Находишь название скилла в списках строк, получаешь его ascii.
По наличию описания у найденного ascii можешь вычислить действительно ли то ты нашёл, или это что-то другое.
Ищешь этот ascii в других файлах или в скрипте.
На этом всё, и этого достаточно.
В редакторе объектов есть такая абилка, как Винные пары, там можно настроить, чтобы юнит не мог атаковать (Безмолвие на одиночную цель (загуглил бтв))
Если хочешь массовое обезоруживание - возьми безмолвие
Технические характеристики: Версия игры 1.26, желательно чтоб дебаф дизарма не конфликтовал с другими стандартными бафами.
Суть-то как раз в том, что б бафф со стандартными не багался. А ты ему предлагаешь как раз стандартные баффы... Не? Тут надо триггерно выдать бафф-пустышку и абилку "склад".
Что именно ты пытаешься запустить?
Это сообщение гласит что редактор у тебя уже запущен.
Если ты пытаешься запустить JNGP вместе с уже запущенным WE, то этого не получится.
Тебе просто надо запускать JNGP (это и есть редактор).
Ред. Extremator
» WarCraft 3 / Таймер вместо вейт
Ред. Extremator
» WarCraft 3 / Не работает простой Триггер (рефоржет)
» WarCraft 3 / Описание героя/боевой единицы больше стандтартного
» WarCraft 3 / Описание героя/боевой единицы больше стандтартного
» WarCraft 3 / Как сделать упровление как в клешь рояле
» WarCraft 3 / Рудник рядом с зданием
» WarCraft 3 / Формула плавного замедления через дистанцию
» WarCraft 3 / Формула плавного замедления через дистанцию
Подкрутил до s12. - лучше, но всё ещё мало.
Подкрутил до s18. - ещё лучше, но движение менее плавное стало.
Подкрутил множитель до .94 - стало нормально.
При скорости 2.064 дистанция падает на 0.339 а потом до 0 = таймер паузится.
» WarCraft 3 / Формула плавного замедления через дистанцию
Это ж не формула от и до, это топорный вариант.
» WarCraft 3 / Формула плавного замедления через дистанцию
Запиши дистанцию толчка, например set Distance = 250.00
Дальше заводи таймер на 0.03 сек и каждый раз уменьшить Speed за счёт умножения его на значение от 0.94 до 0.96
Например так set Speed = Speed * 0.96
После чего уменьшай дистанцию на это число
set Distance = Distance - Speed
Тут же можешь двигать самого юнита от его текущей позиции, под нужным углом, на расстояние записанное как Speed.
Ну а в конце спрашивай есть ли смысл считать ещё раз
if Distance < Speed * 0.5 then
Обычно если можно пройти хотя бы половину, то я оставляю ещё тик.
Хотя при этом его можно обрезать, что б в итоге не превысить общую дистанцию
В самом начале:
» WarCraft 3 / Помогите знатоки, echo sable dota.
Тупо завысить урон в 2 раза? или баффнуть скорость на 1 удар?
» WarCraft 3 / Помогите знатоки, echo sable dota.
Ред. Extremator
» WarCraft 3 / Помогите знатоки, echo sable dota.
» WarCraft 3 / Как сделать предмет Неприкасаемым?
» WarCraft 3 / Как сделать предмет Неприкасаемым?
Таким образом герой просто подходил в упор и всё.
» WarCraft 3 / Заклинание/эффект
» WarCraft 3 / Заклинание/эффект
Ред. Extremator
» WarCraft 3 / Как добыть ID спелов, из карты … ?
По наличию описания у найденного ascii можешь вычислить действительно ли то ты нашёл, или это что-то другое.
Ищешь этот ascii в других файлах или в скрипте.
На этом всё, и этого достаточно.
» WarCraft 3 / Как добыть ID спелов, из карты … ?
Часть из них пытались пофиксить, но... видимо нет.
» WarCraft 3 / Способности и алгоритмы на заказ
Но увольте, я уже кучу раз делал эти стандартные фокусы...
» WarCraft 3 / Способности и алгоритмы на заказ
А ты ему предлагаешь как раз стандартные баффы... Не?
Тут надо триггерно выдать бафф-пустышку и абилку "склад".
» WarCraft 3 / Как задействовать анимацию при касте скила
Ред. Extremator
» WarCraft 3 / Трансформация здания
И если всё равно будет анимация стройки, то сбрасывать её после каста абилки (через 0.01 сек)
» WarCraft 3 / не могу зайти в jass
Это сообщение гласит что редактор у тебя уже запущен.
Если ты пытаешься запустить JNGP вместе с уже запущенным WE, то этого не получится.
Тебе просто надо запускать JNGP (это и есть редактор).
» WarCraft 3 / Как задействовать анимацию при касте скила
Просто фикс будет, как с трентами, Акамой, веткой...