Строчки такого вида:
["TaskAssigned",["","Destroy vehicle"]] call BIS_fnc_showNotification;
как раз отвечают за сообщение на экране. Они даже не связаны с самим заданием - таким образом можно выводить любые сообщения.
А здесь:
_event = IFR addEventHandler ["Killed",
{
task1 setTaskState "Succeeded";
["TaskSucceeded",["","Destroy vehicle"]] call BIS_fnc_showNotification;
}];
создается обработчик событий (
Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание
), который срабатывает при уничтожении ифрита (ифрит в редакторе назван IFR), показывая новое сообщение и изменяя статус задания на "выполнено".
Чтобы был маркер на задание, можно использовать setSimpleTaskDestination, например дописать
task1 setSimpleTaskDestination (position IFR);
В таком случае, маркер появится на том же месте, где стоит ифрит (IFR). Тогда еще можно будет подписать этот маркер, поправив строчку с setSimpleTaskDescription:
task1 setSimpleTaskDescription ["You must destroy this Ifrit","Destroy vehicle","Ifrit is here!"];
Насчет запрещения ускорения времени, хорошего решения не придумал - могу предложить только дурацкое:
while {true} do
{
waitUntil {accTime > 1};
setAccTime 1;
};
Может, кто-нибудь сможет найти способ получше.