PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit scripted Tasks


Papabär
03.05.2017, 23:48
Nabend Leute,

ich stehe vor folgendem Problem: Ich möchte Tasks gänzlich per Script erstellen, ich bekomme die Bedingungen aber nicht auf die Reihe (Lokalitätsproblem)

_TaskID = TaskAlpha1;
_TaskPosition = [17040.947,22001.61,1];
_TaskDescription = "Geh mal Bier holen, du bist schon wieder haesslich!";
_TaskTitle = "Bring mir Bier";



// Create the task

[[west,["_TaskID"],[_TaskDescription, _TaskTitle, test], _TaskPosition,1,2,true], {
_this call BIS_fnc_taskCreate;
}] remoteExec ["call"];


// Create Hostage

_grp = createGroup Civilian;
_TaskID = _grp createUnit ["C_Man_casual_3_F", _TaskPosition, [], 0, ""];
_TaskID setbehaviour "CARELESS";
[_TaskID, true] call ACE_captives_fnc_setHandcuffed;

// Task Conditions


while {alive _TaskID} do {
if ({!alive _x} count [_TaskID] == 0) then {hint "lebend"};
sleep 1;
};

[["_TaskID", "Succeeded"], {
_this call BIS_fnc_taskSetState;
}] remoteExec ["call"];
sleep 1;
["_TaskID"] call BIS_fnc_deleteTask;

Ich habe gelesen, dass Variablen mit _ (zB _TaskTitle) nur Lokal ausgeführt werden, was es unmöglich macht als anderer Spieler zB den Task auszuführen.

Wo steckt da der Fehler und mag mir wer zeigen, wie es richtig funktioniert (der Task soll für alle Spieler ausführbar sein, auch wenn man nachjoined etc.)?




Grüße

Pfandgiraffe
04.05.2017, 22:10
Da ist so viel Durcheinander, dass man nicht weis wo man anfangen soll. Mal ne Fangfrage: Wer soll das Script denn ausführen?

Es gibt so viele Threads in denen Lokalitäten erklärt werden. Die solltest du zuerst lesen. Dann kannst du das so weit aufräumen, dass man dir da irgendwie helfen kann ohne alles selber zu schreiben.


Grüße

Papabär
04.05.2017, 23:17
Ich hab mal im BIS Forum gefragt und folgendes bekommen:

_TaskPosition = [17040.947,22001.61,1];
_TaskDescription = "Describe the task!";
_TaskTitle = "My name is task";

_grp = createGroup Civilian;
_civil = _grp createUnit ["C_Man_casual_3_F", _TaskPosition, [], 0, ""];
_civil setbehaviour "CARELESS";
[_civil, true] call ACE_captives_fnc_setHandcuffed;

_taskId = str (_civil);
[west,[_taskID],[_TaskDescription, _TaskTitle, "marker"], _TaskPosition,1,2,true] call BIS_fnc_taskCreate;
[_taskId,_civil] spawn {
params ["_taskId","_civil"];
waitUntil {sleep 2; !alive _civil};
[_TaskID, "Succeeded"] call BIS_fnc_taskSetState;
sleep 10;
[_TaskID] call BIS_fnc_deleteTask;
};

Problem nur: Es funktioniert auch nicht im JIP.