![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
Несколько вопросов по триггерным спелам.
Экспансивное поглощение знаний в области редактора, связанное с приходом _сюда_ , привело к возникновению у меня вопросов по триггерным спелам. Вот те, что я смог вспомнить:
1. Псевдоченнел. Однажды делал абилку- струя огня. Канальная, числовые значения зависят от статов кастера->весь урон и область задает скрипт(заклинание у героя- пустышка, служит "гашеткой" для триггеров и обеспечивает визуальный эффект). Если во время ченнела игрок отдает приказ о перемещении кастеру, то анимация обрывается, но триггеры, естественно, продолжают работать, нанося урон области. Бред, вобщем. Вот сейчас придумал такой вариант- одновременно с запуском абилки создавать триггер с условием (specific unit event, аргумент- наш кастер), проверкой(юнит прекращает применение способности), действием(прекрашение работы нужных триггеров). Но может есть лучший способ? 2. Динамическое создание триггера. Это круто. Это дает кучу возможностей. А сильно ли дст нагружает компьютер? Может быть, дст следует применять в последнюю очередь, перебрав вначале иные варианты? 3. Изменение цвета спецэффекта. Увы, но оценка за мои познания в моделлинге будует отрицательной, даже если ее возвести в квадрат. Поэтому решить эту проблемму я пытался путем создания юнита с видком нужного эффекта, и последуйщего изменения его RGB оттенков. Нифига не вышло. А как это сделать правильно? 4. Кулдаун абилки. Например, кастер должен иметь возможность применить способность пять раз подряд, с нулевым кд(литлкастер не катит). После чего кд будет. Самое первое, что приходит в голову- после каждого применение делать UnitResetCooldown, со счетчиком. Но этот вариант не подходит- охлаждаются все абилки, а этого нам ненадо. Второе, что пришло в голову- сделать две похожих абилки, только у одной из них будет нулевой кд; после пятикратного ее применения заменить ее абилкой с кд, по истечении которого опять-таки дать первую абилку. Но это как-то коряво, на мой взгляд. А как еще? Пока что все. Что вспомнил то вспомнил, что не смог- напишу позже. Нервно кусаю ногти, ожидая ответов. З.Ы. Небольшой оффтопчик напоследок. Для тех, кто не пробовал- измените способность "ракетный удар", сделав область поражения 1, плотность снарядов максимальной. Моя любимая анимация в таком случае- феникс(войска дальнего боя), еще как вариант- снаряд темной цитадели или башни неруба. Выглядит потрясно. |
![]() |
#1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Scorched
![]() ![]() offline
Опыт:
7,912Активность: |
|
![]() |
#2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
PlayerDark
Coraline
![]() ![]() offline
Опыт:
10,569Активность: |
1. если у тебя там есть периодический триггер - поставь в нем условие на наличие у кастера нужного ордера. Тогда если юнит что то сделал другое то внутри условия происходит удаление всего спелла и прекращение его действия.
2. Современный компьютер такая фигня как триггер нагружает не сильно. Тормозить могут динамические периодические триггеры создаваемые в массовом количестве. Также нужно внимательно следить за утечками производимыми триггерами. 3. Цвет юнита меняется спокойно но насколько я знаю цвета приаттаченых спецеффектов не изменяются. 4. Согласен с Scorched ом. PlayerDark добавил: 1. Не забудь дописать return внутри проверки. |
![]() |
#3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Strayiker
Warcraft Forever
![]() ![]() offline
Опыт:
3,406Активность: |
|
![]() |
#4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
1. Хорошая идея, ведь триггер именно периодический. Sps.
2. А какие утечки произвотит триггер? Или обнуление переменных с последуйщим call DestroyTrigger() не лечит эту проблемму? 3. А я не аттачил эффект, я создал юнит с моделью нужного спецеффекта. Хз почему непашет. 2Scorched&PlayerDark 4. Если каждый раз давать-удалять абилку, получится намного больше триггерных операций, чем сделать это один раз в конце. Да и вобще, суть та же. Корявая. Может, есть способы устанавливать для юнита U кулдаун К абилки А? Хотя я таких функций невидел, но мало ли. 5. Открыть карту в текстовом редакторе. С радостью пропатчив вар до 1.22, я лишил себя возможности использовать JassNextGenPack и убил свою карту, в которой его использовал. В принципе, ничего особо ценного та карта из себя не представляла- так, лаборатория. Но все же жаль. А можно ли открыть карту не в эдиторе, а как текстовый документ? И что для этого надо? Тогда, удалив лишнее, можно будет решить проблему... |
![]() |
#5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Strayiker
Warcraft Forever
![]() ![]() offline
Опыт:
3,406Активность: |
Цитата:
Сам триггер - утечка. Нужно не просто удалять триггер, но ещё чистить всё что с ним связано. Цитата:
читай мой пост чуть выше. 5. Открой карту MPQ редактором выдери что нужно и открой текстовиком. |
||
![]() |
#6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
По совету умных людей прошу модераторов перенести тему в раздел "академия", а заодно задаю идиотский вопрос- что такое MPQ редактор? |
![]() |
#7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Scorched
![]() ![]() offline
Опыт:
7,912Активность: |
Это архиватор, понимающий mpq |
![]() |
#8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
Понимаю, что следуйщие вопросы не стыкуются с названием темы, ну да ладно, может кто ответит пока не потрут топик)
Открыв карту в WinMPQ и найдя файл с скрипт-кодом карты, я прикрыл даблслешем те функции, которые не нравились редактору, сохранил изменения... но всеравно не открывает. Пересмотрел код кучу раз, вроде все правильно. Может, надо изменить еще что-то? Картинка с ошибкой редактора ниже. И еще. В коде карты заметил то, о чем в свое время читал- регионы генерируются при создании карты- Код:
-при помощи функции Rect(), что, по моему скромному мнению, происходит от Rectangle. Мне стало интересно- неужели близы прописали одну-единственную функцию для создания региона? Может быть, есть еще функции? А то прям культ прямоугольника какойто и просто дискриминация остальных геометрических фигур. |
![]() |
#9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Dragon Knight
Меткий стрелок!!!
![]() ![]() offline
Опыт:
4,138Активность: |
Цитата:
Эта ошибка у меня тоже вылазела.Мне кажется эту карту надо открывать в JNGP. |
|
![]() |
#10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
Dragon Knight, весь этот кипиш с MPQ редактором я начал в связи с желанием удалить из кода карты те функции, корторые не открывает редактор варика после того как карта побыла "в руках" у JNGP. Не получилось.
Scorched, ты был прав насчет пункта 4=). Если сделать по принципу двух абилок, то возникают проблеммы с заменой абилки, приходится изощряться. Делаю по принципу добавил-удалил. |
![]() |
#11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Scorched
![]() ![]() offline
Опыт:
7,912Активность: |
Xenosapien, попробуй написать в тему про jngp (в разделе jass)
|
![]() |
#12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sebra
![]() offline
Опыт:
5,603Активность: |
Цитата:
Цитата:
.j файл смотрел? Там результат компиляции, а не твоя работа. Этот файл создаётся на основании твоих "триггеров" при сохранении карты. Цитата:
А по моему скромному мнению, то, что в ГУИ называется "Регион", на джассе пишется как rect - прямоугольник, описываемый: Код:
А region - набор точек/клеток/ячеек: Код:
Цитата:
Прямоугольник определить проще, а для остальных фигур регион. |
||||
![]() |
#13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
Цитата:
рофл... боян но всетаки рассмешило... http://img371.imageshack.us/img371/7006/pc64ne2.gif ну вообще еще хорошая фигура круг, радиус (координаты + дистанция), весьма юзается в варе Цитата:
это кто тут у нас такой умный сейчас схлопочет варн за взятие на себя обязаностей модератора?) 1) по идее (хотя я и не тестил) на кастере чанелинг спела дб бафф от сего же спела (по которому вар собстно и проверяет кастуется ли спелл) 2) только на получение вреда конкретным юнитом и на приближения к юниту, в остальном мона не создавать тригеры динамич 3) самое тру конечно эдитить модель... 4) смотря как кастер получает абилки... мона сделать их многоуровневыми и на каждый уровень свой кулдаун, и выставлять их тригерно... |
||
![]() |
#14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
Хмм как интересно. Sebra, тоесть при помощи функций CreateRegion и RegionAddCell можно рисовать области любой формы прямо в игре? RegionAddCell, кстати, добавляет клеточку 1*1?
ADOLF, врядли тот парень желал мне зла, всетаки он помог мне с п.3=) А насчет многоуровневых это труъ. Буду пробовать. |
![]() |
#15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
да конечно я шучу) вообще просто если вам кто то что то говорит, или вы не уверены - прочтите правила, благо они есть в каждом разделе свои и т.д. и никаких проблем не будет) |
![]() |
#16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Sunn
To feel joy, not be blue
![]() ![]() offline
Опыт:
4,975Активность: |
Вот еще один вопросик. Например, надо создать эффект, извините за тафтологию, движущегося эффекта. Обычно это делаю двумя способами- или двигаю юнит с видком эффекта/приаттаченым эффектом(но этот способ я неочень люблю, так как с юнитами куча проблем), или просто создаю и удаляю эффекты где надо, чтоб возникла видимость движения. Что лучше? Париться с юнитами-эффектами, делать их "невидимыми" для триггеров с проверками(например, на количество юнитов в области, или на кол-во юнитов типа, и т.д.), опять же все эти неуязвимости для них... или забить на них и делать чисто на эффектах? Может быть, есть еще способы. Жду советов) |
![]() |
#17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Dragon Knight
Меткий стрелок!!!
![]() ![]() offline
Опыт:
4,138Активность: |
Xenosapien а зачем тебе их скрывать!Ты создай дамми-модельку с нужными креплениями->установи её юниту и дай юниту способность "москиты"->триггерно аттач эффекты к этому даммику и двигай куда хош!--->эффект движущегося эффекта.
|
![]() |
#18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Hexus
Looking for a victim
![]() ![]() offline
Опыт:
19,166Активность: |
Первый вариант предпочтительней, т.к. у некоторых эффектов нет анимы stand - у них сразу проигрывается death, так что удаление визуально ничего не изменит. Просто нагромождение эффектов. И даже если анима stand есть, все равно за эффектом будет тянуться хвост из его же death-аним. |
![]() |
#19
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
adic3x
![]() offline
Опыт:
108,439Активность: |
Xenosapien, юзать юнитов т.к. еффект не может быть создан на нужной высоте, поэтому максимум во втором вариант ты сможешь сделать движение "по земле" + также я не уверен что постоянное создание/удаление будет быстрее чем работа с юнитом
|
![]() |
#20
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|