Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты для начинающих
Показать сообщение отдельно
#96
Старый 19.01.2017, 13:54
  #96
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
По умолчанию
Re: Скрипты для начинающих

Проще всего создать регион размера 1x1 и написать триггер по входу в этот регион:

Trigger(REGION_ENTER_AND_STOP_TRIGGER,"имя региона","FName")

Где FName -- имя функции. А перед этим собственно что должна делать функция

function FName(heroname)
 if GetObjectOwner(heroname)==1 then
  SetObjectiveState("имя задания", OBJECTIVE_COMPLETED)
  Trigger(REGION_ENTER_AND_STOP_TRIGGER,"имя региона",nil)
 end;
end;

Внутри функции мы, во-первых, сделали проверку условия, что heroname принадлежит первому игроку (если игрок-человек первый, конечно). Во-вторых, если условие выполнено, засчитали задание выполненным и отменили действие триггера, чтобы он больше не вызывался.
Ment вне форума
Ответить с цитированием