ГлавнаяБлогКарты Warcraft 3Гайды для первой ДотыГайды для Доты 2 [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: XOPYC  
Прыжки
Дата: Пятница, 07.01.2011, 23:56 | Сообщение # 11
Генералиссимус
Ньюсмейкер
Сообщений: 2438
Награды: 8
Репутация: 85
Quote (SunCreep)
Если не сложно напиши пример юза локально пермены при использовани триггера.Ну я так понял нужно ставить в начале касту скрипт,а дальше?))

Весь триггер не буду писать, напишу что и на что заменить.

Для начала, в самом начале триггера, необходимо задать локальные переменные.

Code
local real r1
local real r2
local unit u

Двлее копируем этот триггер и преобразовываем копию в текст, что бы узнать, как все эти действия записываются текстом.

Переходим к нашему триггеру - оригиналу, и заменяем все действия, где сейчас используются глобальные переменные, кустом скриптом.

В тексте меняем только
udg_Caster[0] на u
udg_real[0] на r1
udg_real[1] на r2

+ ко всему удаляем все Wait и включение/выключение второго триггера.

Перемещение юнита задаем цыклом

Code
For A=1 to 4 do action   
     <и вот тут уже перемешение персонажа>

Цыкл этот ставим вместо wait(0.40)
алее после анимации вместо
Цыкл этот ставим вместо wait(0.30)
Ставим ещё 1 такой же цыкл

В итоге у нас 1 триггер, без вэйтов и он может использоваться хоть СОТНЕЙ игроков ОДНОВРЕМЕННО.

 
Дата: Пятница, 07.01.2011, 23:59 | Сообщение # 12
Генералиссимус
Ньюсмейкер
Сообщений: 2438
Награды: 8
Репутация: 85
Quote (SunCreep)
А если его не включит?То смысл от скила?

Если триггер зарание выключен (есть такая галочка у триггера сверху, не совсем отключ ен, а именно временно выключен)
То
Триггер не воссоздаёт себя миллионы раз, а просто находится в спокойствии.
Когда нам надо - мы его активируем и трггер начинает бурно работать.
Больше он нам не нужен? снова выключаем и снова озу не атакуется.
 
Дата: Суббота, 08.01.2011, 00:02 | Сообщение # 13
Генералиссимус
Ньюсмейкер
Сообщений: 2438
Награды: 8
Репутация: 85
Quote (DonLaonda)
В итоге у нас 1 триггер, без вэйтов и он может использоваться хоть СОТНЕЙ игроков ОДНОВРЕМЕННО.

Забыл только, что в самом конце триггера надо
Code
cs: set u = null
 
Дата: Суббота, 08.01.2011, 00:10 | Сообщение # 14
Генералиссимус
Ньюсмейкер
Сообщений: 2438
Награды: 8
Репутация: 85
Эхх и снова нашёл сам у себя ошибку)) В цыкле тоже необходимо ставить вэйт 0.03 или вернуться к созданию второго триггера.

Тогда прийдется использовать глобальную переменную для переноса.
т.е. надо будет присваивать перед вэйтом к глобальной переменной локальную.
А во втором триггере к локальной глобальную.
И поставить счётчик того, сколько раз запущен триггер, т.е. в самом начале поставить например глобальную целочисленную set udg_A = udg_A + 1
и для переноса использовать udg_Caster[udg_A]

Так же прийдется создать третий триггер, который будет вычислять пустые элементы масива и сокращать его.

ВЫВОД: используем для одного игрока пример ванзера, а для нескольких добовляем вэйты в мои цыклы.
Ну а если хочется совершенства, то дорабатываем по моим подсказкам, сам я не смогу без редактора написать =\
Когда он у меня появится, даже не знаю, я сейчас вообще героями 4 занимаюсь.

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