Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ERM: Вопросы и ответы
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды > Скрипты
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52
DracoLich
При изменени слота? blink.gif Чего-то я не догнал... Ладно, так: нужно, чтобы после изменения положения арта запускалась функция/ресейвер? !?AE0/1 и все дела. Дальше просто узнаешь, что за арт сняли, и запускаешь ресейвер !!UN:A.
2) Помойму никак. Только вручную устанавливать, т.к. это вроде нигде не записывается...
Demiurg
Подскажите плз, как лучше реализовать удаление артифакта из конкретного слота. То есть если этот артифакт есть у героя еще и в других слотах, чтобы их эта процедура не затронула. Насколько я понял в стандартный функциях ЕРМ этого нет. И еще HE:A3 в каком порядке просматривает слоты при удалении артифактов?
Paladin
Объясните кто-нибудь как пользоваться ресейвером IF. banghead.gif idontno.gif idontno.gif
Solmyr2000
Простейший IF:M.

ZVSE
!?OB5/6/0; - ЕСЛИ мы использовали обьект в точке 5/6/0
!!IF:M^Ваше сообщение^; - выводим данное сообщение.

Есть также IF:Q а именно вопрос. Например:

ZVSE
!?OB5/6/0;
!!IF:Q1^Хотите войти?^; - число 1 означает ФЛАГ. Если вы отвечаете ДА - флаг выставляется в 1. Если НЕТ - флаг выставляется в 0.
Значит, если вы отвечаете ДА, то:
!!IF&1:M^Вы вошли....^;
А если нет, то:
!!IF&-1:M^Не хотите, как хотите..^;

Вот еще пример:

!?OB5/6/0;
IF:Q1/#2/#3/#4^ТЕКСТ^; - что это? А это текст с картинкой. #2 - Тип картинки, например 21 - монстр. #3 - подтип картинки. Например 8 - монах. #4 - это тип сообщения. 1 - простое сообщение с картинкой, как IF:M. 2 - Вопрос, как было уже обьяснено ранее.

Очередной пример:

IF:Q1/#2/#3/#4/#5/#6^ТЕКСТ^ - тоже текст, только с ДВУМЯ картинками. #2 и #3, как уже прежде было сказано - это тип и подтип картинки. #4 и #5 -тоже самое, только для второй картинки.
#6 - тот же тип сообщения, только возможен еще один тип - 10. Это выбор картинки. Если вы выбрали левую картинку - флаг равен 1. если правую флаг равен 2.

То есть при выборе правой:
IF&v1=2:M^Вы выбрали правую картинку.^;
а при левой:
IF&v1=1:M^Вы выбрали левую картинку.^;
DracoLich
Также этот ресейвер используется для установок значений флага: ЛОЖЬ или ИСТИНА:
ZVSE
!?OB5/6/0;
!!IF:V10/1; - установить флаг 10 на 1 (ИСТИНА) (0 = ЛОЖЬ)
Также можно задавать вопросы Сфинкса:
ZVSE
!?OB5/6/0;
!!IF:X$; - задать вопрос номер $ (-1 = любой)
Если ответ правильный, флаг 1 становится ИСТИНА (1), если нет - ЛОЖЬ (0)
И еще возможно изменять переменные ГЕРОЯ (w1...w200) с использованием IF для выбора героя:
ZVSE
!?OB5/6/0;
!!IF:W-1; - переменные текущего (посетившего триггер) героя
!!IF&w22=0:M^Переменная героя равна нулю.^; - если герой посещает первый раз, его переменная равна нулю.
!!IF&w22>0:M^Переменная героя равна %W22^; - т.е. герой посещает уже w22 раз
!!VRw22:Sd1; - теперь у героя переменная w22 равна 1
Paladin
А как вставлять свои картинки в IF:Q
DracoLich
!!IF:Q#1/#2/#3/#4^^; - сообщение с одной картинкой, где #2 - тип картинки, #3 - подтип
!!IF:Q#1/#2/#3/#4/#5/#6^^;Сообщение с двумя картинками, где #2 & #4 - тип, а #3 & #5 - подтип картинки
!!IF:Q#1/#2/#3/#4/#5/#6/#7/#8/#9^^; - соообщение с 3 картинками, где #2, #4 & #6 - тип, и #3, #5 & #7 - подтип картинки
Название Тип Подтип
Ресурс Тип (0...7) Количество
Артефакт 8 Номер артефакта
Заклинание 9 Номер заклинания
Флаг 10 Номер флага (0 - красный, ...7 - розовый)
Удача (позитивная) 11 + удачи
Удача (нейтральная) 12 Не имеет значения
Удача (отрицательная) 13 - удачи
Мораль (позитивная) 14 + морали
Мораль (нейтральная) 15 Не имеет значения
Мораль (отрицательная)* 16 - морали
Опыт 17 Количество
Вторичный навык 20 Навык + уровень (3...86)
Монстр 21 Тип монстра
Здание в городе 22...30 (в зависимости от типа города) Номер строения
Первичный навык 31...34 Количество
Баллы заклинаний 35 Количество
Золото 36 Количество
И ERM_HELP почитай. Там все это есть. yes.gif
Paladin
А свою картинку как вставить?
Solmyr2000
Цитата
!!IF:Q#1/#2/#3/#4^^; - сообщение с одной картинкой, где #2 - тип картинки, #3 - подтип
!!IF:Q#1/#2/#3/#4/#5/#6^^;Сообщение с двумя картинками, где #2 & #4 - тип, а #3 & #5 - подтип картинки
!!IF:Q#1/#2/#3/#4/#5/#6/#7/#8/#9^^; - соообщение с 3 картинками, где #2, #4 & #6 - тип, и #3, #5 & #7 - подтип картинки

Драколич, я уже это обьяснил...

Цитата
А свою картинку как вставить?


Как в IF:Q - никак.
Можно в IF:E

Пример:
!!VRz10:S^Верхний текст.^;
!!VRz11:S^Путь к картинке из папки Heroes 3/Картинка.расширение^;
!!VRz12:S^Путь к картинке из папки Heroes 3/Картинка.расширение^;
!!VRz13:S^Путь к картинке из папки Heroes 3/Картинка.расширение^;
!!VRz14:S^Путь к картинке из папки Heroes 3/Картинка.расширение^;
!!VRz15:S^Описание картинки 1^;
!!VRz16:S^Описание картинки 2^;
!!VRz17:S^Описание картинки 3^;
!!VRz18:S^Описание картинки 4^;
!!IF:D5/10/0/0/11/12/13/14/15/16/17/18/0/0/0/0; - все переменные
!!IF:E1/(Номер D#);



# - number of dialogue (1..100)
($=index of z variable that holds text to use)
$1 - Title Text (White) at top of dialogue box.
$2 - Right Legend (Yellow) above input box.
$3 - Left Legend (Yellow) of 4 checkboxes..
$4 - Pic/AVI 1 (left) File in Heroes3/Maps folder.
$5 - Pic/AVI 2 - File in Heroes3/ Maps folder.
$6 - Pic/AVI 3 - File in Heroes3/ Maps folder.
$7 - Pic/AVI 4 (right) File in Heroes3/ Maps folder.
$8 - Legend of Picture 1 (mouse-over hint)
$9 - Legend of Picture 2 (mouse-over hint)
$10 - Legend of Picture 3 (mouse-over hint)
$11 - Legend of Picture 4 (mouse-over hint)
$12 - Choice 1 (checkbox) - button text.
$13 - Choice 2 (checkbox) - button text.
$14 - Choice 3 (checkbox) - button text.
$15 - Choice 4 (checkbox) - button text.
Deo
Подскажите, как можно определить координаты героя, к примеру текущего. beee.gif
BloodPhoeniX
команда !!HE:P;

!!HE-1:P?y1/?y2/?y3;
получить координаты текущего героя
y1 - координата x
y2 - координата y
y3 - уровень
Deo
А как-нибудь можно узнать на чем стоит герой - т.е. на каком ландшафте - снег, грязь ,пустыня. Или если есть координата - то ландшафт в ней узнать можно? И если да то какое число какому ландшафту соответствует?
DracoLich
!!TRx/y/l:T$1/$2/$3/$4/$5/$6/$7/$8; - установить/проверить/получить тип почвы:
$1 - тип
$2 - подтип почвы
$3-$8 - здесь тебе не важно? Если нет, ставь "d"
Типы почв - 1...9 (соответственно Грязь, Пустыня, Трава, Снег, Болото, Скалы, Подземелье, Лава, Вода)
Soul Reaver
Обращаться с такими вопросами в если нужен скрипт. Тема для статей.
BloodPhoeniX
Как можно проверить есть у командира регенерация или нет?

Пример не работает т.к. всегда выводится 0, не зависимо есть у командира регенерация или нет.
!?BA0;
!!BA:H0/?y1; получаем левого героя
!!COy1:B3/11/?v7925; смотри есть у левого командира регенерация или нет

!!VRz-1:M3/v7925; !!IF:M1/z-1;
DracoLich
!?BA0;
!!BA:H0/?y1;
!!COy1:B3/11/?v7925;
!!IF:M^%V7925^;
BloodPhoeniX
Проблема не в том что он выводит неправильное значение, а в том что он не получает его.
!!COy1:B3/11/?v7925; - всегда возвращает ноль, вне зависимости от того есть навык или нет... вот.
DracoLich
Используй !!COy1:B1/$1/$2; $2 = 0 - значит нету, 1 - есть
BloodPhoeniX
Эх, и правда... А я и не заметил что-то сразу B1. DracoLich, спасибо!

Тагда еще вопросик посложней, как изменить порядок действия абилок командира, например:
если он имеет Смертельный Взгляд и Шанс Парализовать, то сначала накладывается Парализация, а потом - Смертельный Взгляд. Я хочу изменить порядок срабатывания. Не знай как?

И на счет Регенерации, почему если есть артефакт Эликсир Жизни (восст. полностью здоровье) у героя и Регенерация (восст. 50 здоровья) у командира, то командир использует регенерацию, а не элексир?
DracoLich
Цитата(BloodPhoeniX @ 07 Nov 2006, 18:19)
Тагда еще вопросик посложней, как изменить порядок действия абилок командира, например:
если он имеет Смертельный Взгляд и Шанс Парализовать, то сначала накладывается Парализация, а потом - Смертельный Взгляд. Я хочу изменить порядок срабатывания. Не знай как?

И на счет Регенерации, почему если есть артефакт Эликсир Жизни (восст. полностью здоровье) у героя и Регенерация (восст. 50 здоровья) у командира, то командир использует регенерацию, а не элексир?

1) Перед боем узнаешь, есть ли такие способности у командера. Затем обнуляешь их. После удара командера высчитываешь шансы (хотя чисто для виду biggrin.gif) и колдуешь с анимацией в своем порядке. Морока, в общем
2) Наверно, недоработка... Рецепт: узнаешь, имеет ли героя арт, и если командер регенерацию тоже имеет, в начале хода командера восстанавливать жизнь
BloodPhoeniX
1) - да уж, мороки много...
2) - немного не так, но почти доделал.
Спасибо за помощь.
Soul Reaver
BloodPhoeniX - хватит! Пиши в если нужен скрипт. СКОЛЬКО МОЖНО! Тема не для вопросов.
DracoLich
??? Я не сталкивался с таким... А нафига?
gamecreator
но должен иметь то же имя, что и карта
rubetz
осознал...
А как обозвать объект на карте?
DracoLich
!#OBx/y/l:Hz$; z$ - переменная с именем
Paladin
А для чего нужны ресейверы FU а то в Help`е не понятно.


Добавлено ([mergetime]1164981096[/mergetime]):
Обьясните по подробнее
gamecreator
они нужны для вызова функции
Paladin
Например
gamecreator
рисивер FU используется для одиночного вызова функции:
!!FU[номер]tongue.gif[параметры кол-вом от 0 до 16];
Параметры помещаются в переменные х1..16.
Paladin
А на примере можешь показать
gamecreator
в хелпе их полно. и переводить не надо.
DracoLich
Пример:
Нужно заменить каждый замок на... Скажем, ученого. Нужны функции... Здесь - DO:
...
!!UN:U98/-1/?y1; - посчитаем, сколько замков на карте
!!DO123/1/y1/1&y1>0:P; - запустим функцию 123, которая и будет работать, если замков >0
!?FU123;
!!UN:U98/-1/x16/1; - получить координаты города под номером круга функции (x16 всегда хранит этот параметр) в переменные v1, v2 и v3 соответственно.
!!UN:Ov1/v2/v3 Iv1/v2/v3/81/0; - убираем замок и ставим ученого (тип 81)
The end. теперь понятно?
FU нужны для функций, которые скорее всего будут циклическими, т.е. зависеть от самого игрока... например, мой скрипт покупки мифрила:
...
!!FU123:P; - это только пример, лишнее убрано
!?FU123;
!!IF:Q1^Хотите купить мифрил?^; - вопрос
!!FU&-1:E; - если нет, сразу выходим
!!IF&1:...
...
!!IF&1:Q2^Хотите повторить?^; - вопрос, который и есть предложение цикла
!!FU123&2:P; - запускаем функцию еще раз.
Таким образом, избегаем ухода скрипта в бесконечность с помощью пары FU-ресейверов.
Лион
У меня два вопроса. первый - как создать задание в объекте, который раньше не был домом провидца и который потом таковым сделали.
и второй - как делать из объекта замок. idontno.gif
DracoLich
2)!!OBx/y/l:T98 U$; - установить объект в x/y/l как замок типа $ (0-8)
1)При посещении давать картинку, текст, потом проверка на задание, если готово, награду... В основном это делается !!IF:...
Лион
пасиб. а то я с типом замка разобраться не мог
Vadim_FVE
У меня очень простой вопрос.
Для команды MA есть такие форматы:

F (fight value)
I (AI value)

Что они означают? Какое влияние оказывают на юнитов?
Заранее спасибо smile.gif
gamecreator
AI value обозначает ценность юнита для компа
Vadim_FVE
Спасибо за AI value
А Fight Value это тоже к компу относится? Может это означает по какой схеме комп будет использовать юнита?
DracoLich
AI value - как будет комп "относится" к юниту на карте (скупать его сразу или нет, строить существо или нет и т.п.)
Fight Value - как комп будет относиться к юниту в битве (убивать первым, беречь своего и т.п.)
Vadim_FVE
DracoLich, спасибо. А я все понять не мог для чего это )

Если взять лучников, то комп их всегда старается первыми вынестими, а у драконом к примеру Fight value на много больше. Почему так происходит? Или комп сначала мочит тех у кого Fight value меньше?

Добавлено ([mergetime]1166169365[/mergetime]):
Можно ли с помощью erm менять def для юнитов?

Можно ли двум юнитам назначить одинаковый def с помощью erm&
DracoLich
А порядок действия компа сильно запутан... Атакует Титанов и не трогает Лазурных... В общем, цифры просто для уверенности - например, можно этим ресейвером компа от уничтожения палаток отучить, выставив Fight на 1.
ЕРМ Дефы менять не позволяет, да и вряд ли позволит...
Darhark
Потому что титанов проще вынести. Можно атаковать лазурных, срубая по одному за три хода, или титанов - каждый ход уменьшать силу вражеской армии.
gamecreator
Цитата(DracoLich @ 15 Dec 2006, 11:09)
да и вряд ли позволит...

3.59 yes.gif
DracoLich
А чего, объявляли о возможности смены вида существа через ЕРМ???
gamecreator
давно, а ты не заметил?
Лион
ещё вопрос. команды UN для чего нужны?
cancer
Вам весь список? shok.gif
В ЕРМ-хелпе всё подробненько описано. Если не ошибаюсь, где-то уже давно выложен переведённый вариант.
DracoLich
Цитата(Лион @ 18 Dec 2006, 16:08)
ещё вопрос. команды UN для чего нужны?

UN = Уничеральные команды... Там дофига и больше...
Лион
лана, команды поищу. вот ещё вопрос. вы уж мне объясните. huh.gif как менять владельца героя. а то чёта не выходит..
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.