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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
[НАРАБОТКА] Веер стрел своими руками
ZzepishДата: Вторник, 28 Февраля 2012, 22:57:43 | Сообщение # 1
7 уровень
Группа: Проверенные
Сообщений: 331
Награды: 0
Репутация: 64
Блокировки:
Веер стрел
Что такое веер стрел (для тех, кто не знает)- это когда герой пускает по определенной дуге, или радиусу много стрел с определенной дистанцией между ними! Тоесть чет типа такого:


А именно такое и будем делать!
Для этого нам надо создать 2 способности! 1-пустышка, для героя (Я назвал ее “Мультишот”), и 1 реальная (“Мультишот2”). Я сделал обе на основе темной стаи (способности Повелителя ужаса).
В “Мультишот” выставляем урон на 0 и заменяем текстуру способности на любую другую! А также выставляем “Время подготовки заклинания – 0.01”(это сделано для того, чтоб дамми юниты, кастующие “Мультишот2” не появлялись раньше времени). Текстуру я заменил на пустую.


Далее в “Мультишот2” задаем параметры, какие мы хотим! Но меняем текстуру на любую другую:


Далее создаем дамми-юнита! Создаем его на основе рыцаря(как мне кажется- самый оптимальный вариант):


Итак! Это наш дамми-юнит! Желательно все указать, как есть, ибо может получится не то, что вы хотели потом!
Далее создаем триггер! Вот скрин:


Переменная Angle- Реальная.

Задаем переменную, далее отнимаем так, чтоб стрелы начинали лететь в левый верхний угол! Для этого нам понадобится отнять 45 градусов от значения Angle! Тоесть, если вы хотите, чтоб стрелы начинали лететь , начиная с лева, то вам понадобится отнять 90 градусов.
Далее создаем цикл! У меня цикл на 18 стрел! Далее, с дамми-юнитом, думаю, все понятно! Мы его создаем, далее делаем так, чтоб он мог налазить на других. Далее задаем параметр, когда юнит умрет (чтоб избежать утечек и нагромождения, которые будут тормозить игру). Далее даем ему способность “Мультишот2”. Далее заставляем его пулять его способностью “Мультишот2”(512- постоянный параметр, просто выставьте его. Можно не выставлять, но тогда даммики будут палить в вашу сторону)). Далее задаем угол между стрелами(я задал угол-5(так как у меня 18 стрел на 90 градусов! 90/18=5))! Это надо брать расчет от начала до конца вашей дуги (то есть самому смотреть и считать) у меня под рукой всегда круг с углами, с осью смещения в 22.5 градусов).
Вот и все, господа).

Надеюсь, что все было понятно.

Все недочеты пишите сюда! Попытаюсь исправить! Надеюсь, что кому нибудь помог!


Тригерщик (средней руки)


Сообщение отредактировал Zzepish - Вторник, 28 Февраля 2012, 23:06:04
 

oleg_best_olegДата: Вторник, 28 Февраля 2012, 23:20:15 | Сообщение # 2
Группа: Заблокированные
Сообщений: 1726
Награды: 0
Репутация: 654
Блокировки:
Casting unit ==> Triggeting unit.

И много утечек (всего три, но цикл...)
Установить переменную: Point[1] = Позиция Triggering unit
--НАЧАЛО ЦИКЛА
Установить переменную: Point[2] = Point[1] offset by 100 towards Angle degrees
Установить переменную: Point[3] = Point[1] offset by 512 towards Angle degrees
--ОСТАЛЬНЫЕ ДЕЙСТВИЯ, но уже вместо позиции со смещением используем точки
call RemoveLocation(udg_Point[1])
call RemoveLocation(udg_Point[2])
call RemoveLocation(udg_Point[3])

--КОНЕЦ ЦИКЛА



Сообщение отредактировал oleg_best_oleg - Вторник, 28 Февраля 2012, 23:21:05
 

ZzepishДата: Вторник, 28 Февраля 2012, 23:40:26 | Сообщение # 3
7 уровень
Группа: Проверенные
Сообщений: 331
Награды: 0
Репутация: 64
Блокировки:
Quote (oleg_best_oleg)
call RemoveLocation(udg_Point[2])
call RemoveLocation(udg_Point[3])
--КОНЕЦ ЦИКЛА

Я в упор не вижу утечек! Ведь переменная перезаписывается!


Тригерщик (средней руки)
 

BorodachДата: Среда, 29 Февраля 2012, 01:24:33 | Сообщение # 4
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
Zzepish, Точки, области, группы, таймеры надо удалять,так они все равно висят в памяти. И за основу лучше брать летающего из нейтрально пассивных, там мало что менять надо и летающие не оставляют трупики (которые так же занимают место памяти).

Karamba
 

ZzepishДата: Среда, 29 Февраля 2012, 01:47:17 | Сообщение # 5
7 уровень
Группа: Проверенные
Сообщений: 331
Награды: 0
Репутация: 64
Блокировки:
Quote (Borodach)
И за основу лучше брать летающего из нейтрально пассивных, там мало что менять надо и летающие не оставляют трупик

Спс! Учту


Тригерщик (средней руки)
 

Novice998Дата: Среда, 29 Февраля 2012, 07:52:29 | Сообщение # 6
8 уровень
Группа: Проверенные
Сообщений: 693
Награды: 0
Репутация: 86
Блокировки:
Zzepish, пфффф...Ну ты и идиот.
Quote (Zzepish)
Переменная Angle- Реальная.

Зачем она?
Quote (Zzepish)
90/18=5

Ты так уверен, что у тебя они летят на 90 градусов?


Nyan
Я в Знай наших
Уже на форум не захожу, варкрафт перестал интересовать (


Сообщение отредактировал Novice998 - Среда, 29 Февраля 2012, 07:52:39
 

ZzepishДата: Среда, 29 Февраля 2012, 10:45:41 | Сообщение # 7
7 уровень
Группа: Проверенные
Сообщений: 331
Награды: 0
Репутация: 64
Блокировки:
Quote (Novice998)
Он в личку спрашивал, потом сказал что я дурак, и у меня неправильное решение, а потом выложил его сюда с ошибками

Во первых- ты дал мне инфу, когда она мне НЕ была уже нужна! Во вторых- Angel мне понадобилась для удобства работы!

Добавлено (29 Февраль 2012, 10:45:41)
---------------------------------------------
Ты вообще способность на двигающихся юнитах предложил! В то время, как ее можно сделать на основе другой! Имхо- полный бред!


Тригерщик (средней руки)


Сообщение отредактировал Zzepish - Среда, 29 Февраля 2012, 13:10:05
 

DreiiДата: Среда, 29 Февраля 2012, 21:29:37 | Сообщение # 8
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
Баян. Предогаю делит

 

ZzepishДата: Среда, 29 Февраля 2012, 23:28:48 | Сообщение # 9
7 уровень
Группа: Проверенные
Сообщений: 331
Награды: 0
Репутация: 64
Блокировки:
Quote (Dreii)
Баян. Предогаю делит

В каком месте? На форуме такого не нашел


Тригерщик (средней руки)
 

SirNikolasДата: Четверг, 01 Марта 2012, 11:43:12 | Сообщение # 10
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (Dreii)
Предогаю делит
Нет, в цикле надо было умножать сколько-то градусов на (Integer A), а не делить и уж тем более не вводить еще один счетчик.

В предыдущей теме (кстати, где она?) писал, что в триггере 18 * 4 = 72 утечных точки. Ну и еще несколько недоработок по мелочи.


 

Ty3uKДата: Четверг, 01 Марта 2012, 15:47:19 | Сообщение # 11
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
72 точки утекает за каждый каст- мелочи trollface

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

ZzepishДата: Четверг, 01 Марта 2012, 17:48:10 | Сообщение # 12
7 уровень
Группа: Проверенные
Сообщений: 331
Награды: 0
Репутация: 64
Блокировки:
ДА БЛИН! ВЕ ТАКИЕ УМНЫЕ! Момогли б!

Тригерщик (средней руки)
 

DreiiДата: Четверг, 01 Марта 2012, 19:32:58 | Сообщение # 13
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
Quote (SirNikolas)
Нет, в цикле надо было умножать сколько-то градусов на (Integer A), а не делить и уж тем более не вводить еще один счетчик. В предыдущей теме (кстати, где она?) писал, что в триггере 18 * 4 = 72 утечных точки. Ну и еще несколько недоработок по мелочи.

Я предлогаю delete темы)


 

SirNikolasДата: Пятница, 02 Марта 2012, 14:08:38 | Сообщение # 14
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Предложение принято.

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


 

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

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