Wake of Gods Forum | Форум Во Имя Богов

Full Version: Вопросы по моддингу
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(24.02.2020 23:44)Zur13 Wrote: [ -> ]И еще вопрос, а область видимости имен меток какая, внутри одного триггера, файла или вообще везде?

Сейчас, емнип, внутри триггера.
Но с появлением re/br/co вообще не вижу необходимости их использования. И, возможно, лучше SN:G выпилить вообще, пока он еще не сильно укоренился.
Quote:Спасибо, это реально полезно. Возможно стоит помещать актуальные примеры кода не в ченжлог, а просто в отдельные текстовые файлы чтобы оно было хотя бы сгруппировано по темам как в справочнике, вроде examples_fu.txt examples_do.txt examples_general.txt вроде это не так много работы как обновление html справочника и сравнимо с обновлением ченжлога?
Видишь ли, примеры устаревают, бывают, а структура в виде файлов, пусть и голый текст, но уже документация, за которой следить нужно и которую обновлять. По времени меня хватает только расписать хотя бы changelog. Если кто будет помогать, буду включать ваши работы без вопросов.

Quote:И еще вопрос, а область видимости имен меток какая, внутри одного триггера, файла или вообще везде?
До следующего триггера (!?XX). В последних версиях метки можно переопределять.
Quote:И, возможно, лучше SN:G выпилить вообще, пока он еще не сильно укоренился.
Увы, уже в куче скриптов и модов данный GOTO заиспользован. И для всех старых версий, на которых моды Валерия и Succession Wars другого способа сделать быстрый цикл не было.
Думаю, можно в справке пометить, что его использование не рекомендуется. И предложить использовать структурные конструкции if/el/en + re.
(25.02.2020 15:26)igrik Wrote: [ -> ]Диалог заданий (журнал)

Автор: igrik
Язык: не зависит от языка
Поддерживаемые версии: ERA
Способ установки: класть в папку EraPlugins

Скачать

132
Положил рядом с 10SSkills.dll и ArtGuard.dll.
(25.02.2020 15:26)igrik Wrote: [ -> ]Диалог заданий (журнал)

Скачать
igrik, ты чудо Ab Спасибо огромное!
(25.02.2020 15:26)igrik Wrote: [ -> ]Диалог заданий (журнал)

Скачать
igrik, отличный плагин. Да, блокнот больше не нужен. Mr47_05
Спасибо!
Как выбрать для своего мода безопасный номер слота для !!SN:M массива?
-1 выделит автоматом свободный слот в отрицательном диапазоне. А положительный диапазон вводил, так как мод Сагамоза был написан в абсолютной адресацией и нужен был инструмент для переноса его на Эру.
(26.02.2020 21:44)Algor Wrote: [ -> ]

Это будет работать после загрузки игры из сейва если я один раз при старте игры выполню инициализацию массива в тригере !?PI


А после загрузки сохраненной игры, просто продолжу пользоваться ранее инициализированным и заполненным массивом

И это уже работает в текущей верси ЭРА 2.9.10?
Да, да, да, да.

Era 1.5.chm есть на русском с описанием. Последний параметр SN:M как раз и отвечает за то, что в сейве сохраняются не только размеры массивов, но и их содержимое.

У тебя пока что будет вроде такого:


Удалять массивы тоже можно. !!SN:M#id;
Zur13, да, все верно. Если массив определен как сохраняемый (4й параметр SN:M равен 1), то достаточно инициализировать его один раз и после работать по имени с его элементами, как указано в строке 2.
Да, в 2.9.10 работает. Вообще, прочитай changelog Эры (Help\Era manual\era ii changelog.txt или здесь на форуме соотв. темы в разделе Эры) - там куча всего крайне интересного по новым возможностям. В т.ч. и примеры использования.
Так, я уже совсем заговорился. s^^ и i^^ синтаксис доступен для команд SN/RD/MP ещё с 2.9.6. Поэтому пишем:
Нужна помощь вот с такой задачей:
  • 1. на поле боя есть 2 мины (расположены рядом горизонтально), их позиции известны (на самом деле мин может быть и больше и располагаться они могут как угодно).
  • 2. на поле боя есть двухклеточный монстр, BM:P для таких монстров в обычном режиме возвращает клетку под его задней частью, соответственно передняя клетка для такого монстра вычисляется в зависимости от стороны за которую он воюет (для левой это +1, а для правой -1)
  • 3. этот гадкий монстр наступает на одну из мин, и для него срабатывает триггер !?MR0, в этом триггере нужно вычислить на какую из 2-х мин он наступил. И казалось бы имея математику из п.2 проблем быть не должно, но она не всегда работает см. п.4.
  • 4. Проблема в том что триггер !?MR0 для мины срабатывает во время движения монстра, и если монстр двигался назад, то позиция возвращаемая !!BM:P, инвертируется от таковой у неподвижного монстра. И если бы движение назад можно было вычислить только из целевой позиции то это пол беды, но монстр может огибать препятствия меняя направление движения несколько раз.
  • 5. В момент срабатывания триггера !?MR0 обе мины все еще присутствуют на поле боя и через !!BU:O определяются.

Возможно есть другие способы вычислить правильно вторую клетку монстра?
Не до конца понимаю задачу. Разве он может наступить сразу на две мины? И что значит «инвертируется», если позиция монстра, судя по описанию, всегда направлена к стороне его героя (левая - правая). Пример бы.
(03.03.2020 05:02)Berserker Wrote: [ -> ]   И что значит «инвертируется», если позиция монстра, судя по описанию, всегда направлена к стороне его героя (левая - правая). Пример бы.

Думаю, что имеется в виду гендерная ориентация монстра (т.е. в какую сторону отзеркален def, в какой стороне у монстра мэ и жо и т.д.). Изменяется содовской функцией (например, можно сделать, чтобы все монстры на поле боя смотрели только в одну сторону 148 или наоборот - чтобы монстры атаковали друг друга задницами 148 ), проверяется в структуре стека (в MoP это Структура_стека.Ориентация).
Reference URL's