PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tasks


HptmBastardo
26.03.2013, 06:53
Hallo zusammen

in Arma 1 habe ich eine paar Coop-Missionen gemacht, Arma 2 übersprungen, und nun habe ich mit Arma3 wiederangefangen. Das Briefing wird ja neu als SQF geschrieben. So weit so gut. Was mir nicht ganz klar ist: kann ich 'player setCurrentTask X' nicht mehrfach verwenden, also so, dass dem Spieler zwei Aufgaben aufs Mal zugewiesen sind? Was auch nicht so funktioniert wie ich will, sind die Notizen. Die werden nicht angezeigt? Unten ist mein Code...mach ich was falsch??? Und: muss man beim briefing.sqf etwas beachten für Coop Missionen (Lokal/Global)? Vielen Dank für Hinweise :)

//Briefing
//Aufgaben
task3 = player createSimpleTask ["Zur Evakuierungszone verschieben"];
task3 setSimpleTaskDestination (getMarkerPos "obj2");
task3 setSimpleTaskDescription["Nach Auschalten der Mörserstellung unverzüglich zur <marker name="obj2">EZ</marker> verschieben!", "Zur EZ verschieben", "EZ"];

task2 = player createSimpleTask ["Unentdeckt bleiben"];
task2 setSimpleTaskDescription["Der Feind sollte nicht alamiert werden", "Unentdeckt bleiben!"];
player setCurrentTask task2;

task1 = player createSimpleTask ["Mörserstellung zerstören"];
task1 setSimpleTaskDestination (getMarkerPos "obj1");
task1 setSimpleTaskDescription["Zerstören Sie die <marker name="obj1">Mörserstellung</marker>!", "Mörserstellung zerstören!", "Mörserstellung"];
player setCurrentTask task1;
//Notizen
player createDiaryRecord ["Diary", ["Tagebuch", "Erster Tag und bereits Spezialauftrag. Freude herrscht."]];

player createDiaryRecord ["Diary", ["Durchführung", "Zerstören der <marker name="obj1">Mörserstellung</marker>, dabei unendeckt bleiben und dann zur <marker name="obj2">EZ</marker> verschieben."]];

player createDiaryRecord ["Diary", ["Situation", "Wir befinden uns natürlich hinter den feindlichen Linien. Mit Patrouillien ist zurechnen. Damit der Feind nicht in den den nächsten Stunden Verstärkung anfordern kann, sollte kein Alarm ausgelöst werden."]];

Sol.LrMartyn
26.03.2013, 08:55
Also ich kenne player setCurrentTask task1 bis jetzt nur so, dass ein Task ausgewählt wird. Bin aber kein Arma 1-Spieler, sondern Arma2 und Arma 3...

Grüße

Martyn

Moerderhoschi
26.03.2013, 09:25
@HptmBastardo

Benutze bei Markerangaben im Briefing bitte das Hochkomma anstatt die Anfuehrungszeichen.

task3 setSimpleTaskDescription["Nach Auschalten der Mörserstellung unverzüglich zur <marker name='obj2'>EZ</marker> verschieben!", "Zur EZ verschieben", "EZ"];


Desweiteren hast du bei task2 setSimpleTaskDescription das letzte Element vergessen.

task2 setSimpleTaskDescription["Der Feind sollte nicht alamiert werden", "Unentdeckt bleiben!", "Unentdeckt bleiben!"];


Alle diese Fehler kannst Du auch selber erkennen indem Du ArmA3 mit dem Parameter -ShwoScriptErrors startest.

funktionierende variante des Briefings:

//Briefing
//Aufgaben
task3 = player createSimpleTask ["Zur Evakuierungszone verschieben"];
task3 setSimpleTaskDestination (getMarkerPos "obj2");
task3 setSimpleTaskDescription["Nach Auschalten der Mörserstellung unverzüglich zur <marker name='obj2'>EZ</marker> verschieben!", "Zur EZ verschieben", "EZ"];

task2 = player createSimpleTask ["Unentdeckt bleiben"];
task2 setSimpleTaskDescription["Der Feind sollte nicht alamiert werden", "Unentdeckt bleiben!", "Unentdeckt bleiben!"];
player setCurrentTask task2;

task1 = player createSimpleTask ["Mörserstellung zerstören"];
task1 setSimpleTaskDestination (getMarkerPos "obj1");
task1 setSimpleTaskDescription["Zerstören Sie die <marker name='obj1'>Mörserstellung</marker>!", "Mörserstellung zerstören!", "Mörserstellung"];
player setCurrentTask task1;
//Notizen
player createDiaryRecord ["Diary", ["Tagebuch", "Erster Tag und bereits Spezialauftrag. Freude herrscht."]];

player createDiaryRecord ["Diary", ["Durchführung", "Zerstören der <marker name='obj1'>Mörserstellung</marker>, dabei unendeckt bleiben und dann zur <marker name='obj2'>EZ</marker> verschieben."]];

player createDiaryRecord ["Diary", ["Situation", "Wir befinden uns natürlich hinter den feindlichen Linien. Mit Patrouillien ist zurechnen. Damit der Feind nicht in den den nächsten Stunden Verstärkung anfordern kann, sollte kein Alarm ausgelöst werden."]];


gruß
moerderhoschi

MrCharles
26.03.2013, 09:31
-ShowScriptErrors

;)

HptmBastardo
26.03.2013, 11:38
Vielen Dank! Werde ich sobald wie möglich ausprobieren.