XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
MicroElf

offline
Опыт: 4,288
Активность:
Триггерное создание/развеивание порчи
Мне необходимо триггерно создать и развеять порчу. Я попробовал дать дамми-юниту способность "развеивание порчи", но это само по себе ни к какому эффекту не приводит.
Как легче всего реализовать создание и развеивание порчи?
Старый 25.10.2012, 11:25
DioD

offline
Опыт: 45,134
Активность:
есть диспел и черепушка нежити, что не так?
Старый 25.10.2012, 11:47
DaeDR

offline
Опыт: 8,074
Активность:
Ищи (даже в гуи есть в разделе Окружение) "Blight"
Старый 25.10.2012, 12:21
MicroElf

offline
Опыт: 4,288
Активность:
DaeDR:
Ищи (даже в гуи есть в разделе Окружение) "Blight"
Вот спасибо, наверное это как раз то что мне нужно!
Ушёл тестить
Спасибо, заработало:-)
MicroElf добавил:
Один дополнительный вопрос только: Blight создается/удаляется только для одного конкретного игрока. Т.е. для других игроков всё останется как было, порча не создатся, либо не удалится. Чтобы сделать это для всех игроков, придется загонять в цикл? Может ли это вызвать десинк?
P.S. Вообще эти вопросы чисто для общего развития, карта для сингплеера, так что сейчас проблем не возникнет. Но на будущее было бы полезно знать
MicroElf добавил:
Хотя работает не на 100%:
  • не удаляет порчу с деревьев, даже если они попадают в радиус действия
  • не удаляет порчу с миникарты (т.е. текстура меняется да, порчи нет, а на миникарте показывается по прежнему так как будто порча есть)
Я кривой или действительно так работает это действие?

Отредактировано MicroElf, 25.10.2012 в 12:48.
Старый 25.10.2012, 13:02
DaeDR

offline
Опыт: 8,074
Активность:
Я кривой или действительно так работает это действие?
Действительно обратного действия нет или я чего-то не знаю
Порча создается сразу для всех
Старый 25.10.2012, 14:01
просто Юрок
...
offline
Опыт: 11,271
Активность:
MicroElf, ну деревья после удаления порчи можно заменять триггерно, а вот с миникартой не знаю.
Старый 25.10.2012, 14:34
MicroElf

offline
Опыт: 4,288
Активность:
просто Юрок:
ну деревья после удаления порчи можно заменять триггерно
Это мне удалось в целом, но есть одна проблема. Я делаю так: выбираю все деревья в нужном радиусе, далле по очереди сохраняю позиции каждого дерева в хеш, удаляю его, создаю на этой позиции новое дерево. В общем всё это происходит моментально и позиции деревьев остаются теми же, но меняется их вид. Т.е. есть такие параметры как scale (хз что делает, по умолчанию 1) и variation (внешний вид дерева, по умолчанию 0). И вот внешний вид дерева меняется. Поэтому нужно либо как-то перед удалением созданием нового узнавать его вид, чтобы создавать точно такое же, либо нужен всё-таки другой вариант развеивания порчи с деревьев
MicroElf добавил:
Пробовал ещё вариант - создать рабочего и стукнуть по дереву, но порча с него не слетает при этом. Какие ещё идеи будут?:)
Старый 06.11.2012, 11:29
Anufis

offline
Опыт: 6,290
Активность:
Есть одна идея, но она тебе не по карману.

Помещаешь все свои декорации на карту.
Пишешь сам консольную програмку, которая из doo файла из карты извлечет данные о всех разрушаемых объектах и приведет в удобный для тебя вид(в список вызываемых тобой функций). Эту функцию составить так, чтобы она создавала декор с указанными параметрами и все эти параметры заносила в хеш. Когда ты будешь менять свои декорации на те, которые в порче, у тебя будут все параметры(scale,variation,смещение по z) в хеше, и ты сможешь менять декорации без потери каких-либо их параметров.
Старый 06.11.2012, 11:35
MicroElf

offline
Опыт: 4,288
Активность:
В том случае если в нужном месте создать здание со способностью "развеивание порчи", то порча развеивается, но деревья остаются зараженными.
MicroElf добавил:
Anufis, это наверное круто, но ужасно сложно. Я явно не осилю. Да и неужели никак нельзя сделать такую простую вещь, как снять порчу с дерева?
Старый 06.11.2012, 11:38
Anufis

offline
Опыт: 6,290
Активность:
Хотя можешь ничего не писать, я всё сделал за тебя.
Кидаешь в папку с этим экзекутаблом файлы, вытащенные из карты(war3map.doo,war3map.w3e), и запускаешь.
Оно сгенерирует j-файлик, откуда тебе будет нужна лишь часть с CreateDestr.
Единственное - это я не проверял, как она работает, когда на карте присутствуют дудады.

Программу писал для себя, потому она помимо разруш.объектов вытаскивает еще ландшафт с неровностями.
Прикрепленные файлы
Тип файла: zip land extractor.zip (30.9 Кбайт, 1 просмотров )
Старый 06.11.2012, 11:40
MicroElf

offline
Опыт: 4,288
Активность:
Anufis, спасибо. Но может всё-таки попытаться сделать это попроще.
Например, проклясть дерево легко можно создав гуля и заставив его один раз ударить по дереву. Наверняка можно и очистить как-то дерево используя триггеры или дамми с какимми-нибудь способностями.
Тот вариант, который ты предлагаешь, ведь очень геморройный (хотя я конечно попытаюсь им воспользоваться если ничего не придумается)
Старый 06.11.2012, 12:04
Anufis

offline
Опыт: 6,290
Активность:
А диспел разве не снимает порчу?
Старый 06.11.2012, 12:12
MicroElf

offline
Опыт: 4,288
Активность:
Anufis, Все диспелы не тестил, но поидее принцип работы одинаковый.
Самопожертвование светляка снимает порчу с местности, но не снимает порчу с дерева.
Старый 06.11.2012, 12:24
KPOKODIL
В разработке
offline
Опыт: 10,262
Активность:
MicroElf, не пробовал срубить / уничтожить зараженное дерево , а потом триггерно реснуть его ?
Старый 06.11.2012, 12:44
MicroElf

offline
Опыт: 4,288
Активность:
KPOKODIL, попробовал через действия kill и resurrect - заново ставится зараженное дерево, даже если под ним уже нет порчи.
Старый 06.11.2012, 12:58
DemoN2099
annihilator
offline
Опыт: 4,418
Активность:
MicroElf, ну так заменяй, в чём проблема.
Старый 06.11.2012, 13:19
MicroElf

offline
Опыт: 4,288
Активность:
Старый 06.11.2012, 13:41
DemoN2099
annihilator
offline
Опыт: 4,418
Активность:
MicroElf, удалил, поставил другое о_о
DemoN2099 добавил:
Вариацию отловить, насколько я знаю, невозможно. Делай отдельные декорации для каждой вариации, чтобы не морочиться.
Старый 06.11.2012, 13:45
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 06:22.