OrnsteinDragonslayerВот написал функцию по совету:
Но после уничтожения всех чертей ничего не происходит. Подскажите, где ошибка?
В startThread функция пишется без кавычек:
startThread(cherti);
Возможно из-за этого и не работает.
OrnsteinDragonslayerИ еще. Возможно ли создать скрытую взаимосвязь между квестами? Попробую придумать простой пример:
Квест - уничтожить враж. героя
Вторичный квест - уничтожить нейтрала.
Когда подходишь к враж. герою, то проигрывается диалог №1, но если ты уничтожил нейтралов, то будет диалог №2.
Так же если просто сразиться с враж. героем, то в его армии будет 5 фениксов.
А если победил нейтралов, то будет 250 волков и надет какой-нибудь артефакт.
Возможно ли реализовать подобные штуки?
Создать взаимосвязь можно, но как - зависит от ситуации. Допустим в случае волков-фениксов при выполнении доп. квеста сразу можно у вражеского героя заменить армию и добавить артефакт.
С диалогом 2 варианта. Первый при выполнении доп. квеста подменять триггер на вражеском герое, который приведет ко второму диалогу.
Второй - с помощью функции GetObjectiveState проверять факт выполнения доп. квеста и в зависимости от выполнения условия выдавать тот или иной вариант.
Но я бы порекомендовал второй вариант, с первым сам намучился в свое время.
И кстати есть еще 3-й вариант - создать переменную, равную например 0, и при выполнении доп. квеста менять ее значение на 1. И при касании к вражескому герою проверять равна ли переменная 1. Но это по сути тот же второй вариант, только лишнюю переменную занимает