База примеров на GUI

Добавлен , опубликован
Содержание:

Правила:
  1. Первое и самое основное правило - здесь обсуждаются лишь вопросы по картостроению в Warcraft 3 TFT!
  2. Какой вопрос - такой и ответ. Пишите грамотно и понятно, если хотите услышать такой же внятный и ясный ответ.
Вопросы а как сделать такую способность, в такой карте, у такого героя, будут посылаться к автору.
Если хотите узнать как сделать, в сообщении прикрепляем карту, указываем героя, указываем способность.
  1. Не задавайте вопрос по несколько раз, ждите ответа.
  2. Здесь рассматриваются только примеры на GUI, JASS не предлагать.
  3. Касательно подстатей - оставлять сообщения там только по теме соответствующей подстатье.

И так о чем же статья. Как видно из названия она будет состоять из примеров, повседневных или так сказать общепринятых. Так как новичков в картостроении меньше не становится, а ответы на вопросы часто лежат так далеко, что большинство даже не шевелиться чтобы их найти. А посему решил сделать этакую базу, на GUI. Почему на GUI спросите вы, а все потому что начинать путь к великому надо с маленького. Да и плюс ко всему все вопросы "...а как сделать на тригерах...?" отпадут после того как человек прочтет или задаст свой вопрос тут. Да и старожилам будет иногда интересно посмотреть. Будем пополнять ее собственными усилиями, будем задавать тут вопросы и искать ответы, так что пишите вопросы.
Тригерные примеры делаются по возможности:
  1. на 12 игроков
  2. тригер можно использовать множеством героев.
Условие пользования базой, это:
  • то что вы знаете управление "World Editor" и его параметры,
  • знаете что такое переменные, ну или хотя бы знаете чем различаются реальные, целочисленные и масcивы.
  • объяснить как работать в "Редакторе Объектов" не нужно
  • милишные карты это то что вы делаете с закрытыми глазами.

`
ОЖИДАНИЕ РЕКЛАМЫ...
17
столько человек просмотрело, и вопросов не возникло???
17
Добавил пример с Диалоговым Окном и заменил текстовые тригеры на картинки.
3
А нельзя триггерно сохранить при морфе добавленные теми же триггерами способности?
15
MrSlap, конечно можно. Создать нужно две массивные переменные - "способность" и "целочисленная".
Перед морфом заносить в переменные саму способность и её уровень. А после морфа давать их.
3
God_of_light, благодарю) Ох и гемморно это будет в моём случае)
God_of_light, любопытно, что это срабатывает, только если после морфа поставить wait хотя бы долю секунды. Это, конечно, не критично, но на панели способностей в этот момент происходит краткое мелькание добавленных абил..
15
MrSlap, не за что)
Смотри как еще можно попробовать:
В одном триггере поставить событие - Начал применять способность, в условии твой морф, записывать способности.
А в другом после события - Закончил применение способности - уже давать обратно скилы.
В этом случае время
краткого мелькания добавленных абил
будет уже зависить от времени каста этого морфа. Сделаешь 0 - скорее всего и не будет заметно.
28
Может все таки лучше через кастом скрипт? Чем заморачиваться с переменными?
Я понимаю, что все на GUI, да и сам между картами делал целые массивы и проверки для переноса способностей, которые добавляются уже в игре, но все же :D
15
Jusper, согласен конечно. Но Sergant1000 настоятельно просит обсуждать здесь только ГУИ)
3
Jusper, если есть какой-нибудь замечательный cs, который мне поможет - я буду только рад)
God_of_light, да, идею с триггером по применению и окончанию применения я тоже думал, но не заладилось у меня с реализацией...
А вообще я создал этакий триггер - реестр добавляемых способностей, присвоив каждой номер из массива абил. И логическую, которая определяет давать или нет персонажу ту или иную абилку. И при любых изменениях отсылаю к циклу, проверяющему все значения этой логической. Вроде как и собственная наработка, но я видел как тут на сайте на джаззе было выполнено примерно то же, но чище, быстрее и лучше, но разобраться не смог)) Поэтому в ГУИ и изощряюсь наколдовывать столбы массивов переменных.
15
MrSlap, твой вариант конечно приемлем, и даже лучше)) если в течение игры не однократно требуется давать абилки.
3
God_of_light, с завидным постоянством, тем паче некоторые из них игрок будет вправе в любой момент поменять на другие.))
17
зачем столбы переменных, тебе потребуется только массивная переменная на абилки и как говорил, God_of_light, всеголишь при морфе давать те или иные абилки в массиве.
3
Sergant1000, ты прав, конечно. Это ж более 50 изучаемых абилок персонажа, и ещё неизвестно сколько абилок предметов. Просто ряд переменных, чтобы не запутаться, какие абилки куда определены и какими функциями вызываются. Систематизация)) Может это как-то замедляет процесс загрузки, зато помогает не заблудиться в триггерах)
28
MrSlap, что я могу предложить:
Определяем юнита, который будет получать абилку в глобальную переменную, скажем, Hero.
Когда мы триггерно даем абилку юниту, вписываем такой CS после функции добавления способности:
cs: call UnitMakeAbilityPermanent(udg_Hero,true,'A000')
где, udg_Hero - глобальная переменная хранящая юнита, true - значение истина (означает что мы определяем абилку как постоянную), A000 - код абилки (виден с редакторе объектов при нажатии Показать названия переменных).
Соотв. когда ты отбираешь абилку, чтобы задать новую, ты перед действием убирания вставляешь такой cs:
cs: call UnitMakeAbilityPermanent(udg_Hero,false,'A000')
Вроде как все.
Sergant1000, прости что за jass, но отслеживать такое в глобалках это застрел.
3
Jusper, спасибо за мысль, поэкспериментирую над этим.
Стоп.. "после функции добавления способности" то есть перед скриптом всё равно нужно добавить способность? Тогда я не совсем понимаю смысл данной манипуляции.
28
MrSlap, все просто. Ты добавляешь способность юниту. Этот CS делает абилку постоянной для юнита, т.е. при морфе она пропадать никуда не будет. Так же при смене абилки, мы убираем значение постоянности абилки для юнита.
3
Ага! Это же то, что нужно) Теперь этот скрипт надо интегрировать в 50 прописанных абил :-D
Самое обидное, что вся система описанная мной в верхнем посте уже была исполнена и работала... Но, думаю, стоит переделать, потому что можно удалить аж четыре лишних триггера! :)
25
Ого, долго же ты делал отображение урона...
28
Ancient, он не делал
он взял чужой и баганый пример
я переделал его в небаганый
25
nvc123, 9 месяцев переделывать баганый пример? Да за это время его родить можно было...
21
Ancient, гуи - малоизученная наукой область редактора
28
Ancient, я его переделал за 2 минуты
9 месяцев это баганый публиковали
Чтобы оставить комментарий, пожалуйста, войдите на сайт.