Hallo liebe ArmA World Community,
ich habe gerade einen Gedanken hänger... aber zunächst erstmal mein Code, um einen Spieler per onMapClick zu seiner gewünschten Position teleportieren zu lassen:
- _bool = false;
- openMap [true, false];
- while {alive player && visibleMap} do
- {
- onMapSingleClick "player setPos _pos; _bool = true; ['#(argb,8,8,3)color(0,0,0,1)', [safeZoneX, safeZoneY, safeZoneW, safeZoneH], [5,5], 2, 1] spawn BIS_fnc_textTiles; onMapSingleClick ''; true;";
- waitUntil {!visibleMap or _bool};
- if (_bool) then
- {
- sleep 1;
- openMap [false, false];
- };
- onMapSingleClick " ''; true";
- };
Ich habe folgendes Problem mit dem Code:
Ich möchte, dass die Map sich nach 1 Sekunde, nachdem der Spieler teleportiert wurde, selbst schließt, damit der Effekt ['#(argb,8,8,3)color(0,0,0,1)', [safeZoneX, safeZoneY, safeZoneW, safeZoneH], [5,5], 2, 1] spawn BIS_fnc_textTiles richtig zur Geltung kommt. Daher auch diese _bool Geschichte...
Leider ist es so, dass die variable nicht von onMapClick weiter gegeben wird, und ich möchte nur ungern eine globale Variable verwenden (womit es funktionieren würde).
Das Script soll von mehr als ein Spieler benutzt werden und ich habe Angst vor hängern von ArmA, wenn eine globale Variable von vielen Spielern verwendet wird.
Wie schaffe ich es, dass openMap [false, false]; 1 sekunde nach dem OnMapClick ausgeführt wird?
Ich bin mir sicher es gibt eine einfach Lösung, ich komme nur nicht drauf
Vielen Lieben Dank im Vorraus
Chibi