Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты
Тема: Скрипты
Показать сообщение отдельно
#2355
Старый 29.07.2017, 20:09
  #2355
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2380
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2380
Выставка наград
По умолчанию
Re: Скрипты

DyrmanДа, и так, и так пробовал. Результат - одинаков.
Если в самой карте переопределяешь триггер - то всё работает. С другим параметром отправителя. Но скрипты же готовых карт не будешь переделывать...
Важно, чтобы переопределение Trigger происходило до выполнения скрипта карты и скрипта мода.
Также желательно добавить стандартный алиас функции Trigger:
	SetTrigger = Trigger
в конец того большого куска кода переопределения.
Он, скорее всего, используется редко или вообще не используется, однако его тоже надо учитывать.
Ещё вопрос стоит обнуления триггера, чтобы обнулялся только нужный, так будет правильно:
Trigger("NHF", OBJECT_TOUCH_TRIGGER, mob, nil);?
Да, так верно.
А если в самой карте обнуляется Trigger( OBJECT_TOUCH_TRIGGER, mob, nil); , то не на все ли подействует?
Нет, по-умолчанию вызов триггера со стандартными параметрами (из руководства) будет интерпретирован как вызов от отправителя 0 (как число, не строка). То есть в данном случае обнулится только триггер, поставленный обычным способом, а все "специальные" останутся. Тем не менее, имитация через Trigger(0, ...) невозможна, т. к. это равносильно Trigger(NEW_DAY_TRIGGER, ...).
Как понимаю, если первый параметр = nil, это тоже является уникальным параметром отправителя.
Нет, первый параметр должен быть или числом (стандартный вызов), тогда оно будет принято как тип события, или строкой, тогда она будет принята как отправитель. Передача первым параметром nil вызовет ошибку attempt to concat a nil value.
При желании параметр отправителя можно поместить в конец как необязательный, тогда в качестве отправителя можно будет посылать любое значение, кроме nil (будет равнозначен незадаче параметра) и NaN (не индексируется в таблицах, так как не равен самому себе). Это потребует небольшой переделки кода.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием