Ja to zawsze robiłem tak jak Blackburn napisał tylko nie używałem taskmastera, w briefingu mam jedno zadanie, np coś takiego:
briefing.sqf
waitUntil {!(isNull player)};
waitUntil {player==player};
switch (side player) do
{
case east:
{
player createDiaryRecord ["Diary",["Sytuacja","Bla bla bla."]];
player createDiaryRecord ["Diary",["Misja",Bla bla bla."]];
player createDiaryRecord ["Diary",["Wsparcie","Bla bla bla."]];
player createDiaryRecord ["Diary",["nieprzyjaciel","Bla bla bla."]];
player createDiaryRecord ["Diary",["Oddzialy sojusznicze","Bla bla bla."]];
tskObj1=player createSimpleTask ["1. Zlikwiduj oficera."];
tskObj1 setSimpleTaskDescription ["Zlikwiduj oficera w tym <marker name='c1'>mieście</marker>.","1. Zlikwiduj oficera.",""];
tskObj1 setSimpleTaskDestination (getMarkerPos "c1");
}};
Potem wstawiam wyzwalacz a w nim piszę:
w warunek:
not (alive oficer1)
w przy aktywacji np: coś w tym stylu:
[] exec "trup.sqs"; hint "Zadanie 1 wykonane"; tskobj1 setTaskState "SUCCEEDED"
W pliku trup.sqs np:
dowodca sidechat "Bla bla bla, masz nowe zadanie."
~6
hint "Sprawdz mape, masz nowe zadanie."
tskObj2=player createSimpleTask ["2.Zlikwiduj drugiego oficera."];
tskObj2 setSimpleTaskDescription ["Zlikwiduj drugiego oficera w tym <marker name='c2'>mieście</marker>.","2. Zlikwiduj drugiego oficera.",""];
tskObj2 setSimpleTaskDestination (getMarkerPos "c2");
oficer1, oficer2, dowodca to nazwy jednostek na mapie, oficerowie to wroga frakcja, dowodca to jakiś żołnierz z twojej frakcji.
W drugim wyzwalaczu:
warunek:
not (alive oficer2)
przy aktywacji:
tskobj2 setTaskState "SUCCEEDED"
No i 3 wyzwalacz kończący misję:
warunek:
not (alive oficer1) and not (alive oficer2)
w przy aktywacji albo w efektach wyzwalacza tekst "Misja wykonana" i to koniec.
