Einzelnen Beitrag anzeigen
Alt 26.05.2015, 08:54   #1 (permalink)
Drunken Officer
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard Vergleich von 2 Arrays mit anschließendem Select

Hallo

Ich komme bei einem Problem nicht weiter. Ich lasse per Script serverseitig eine Gruppe erstellen und mache diese public. Danach treten die Spieler dieser Gruppe bei. Dies wird durch die initplayerlocal.sqf geregelt.
Funktioniert so weit. (Damit umgehe ich einen Pflichtslot und es ist alle frei wählbar)

Aber aus irgendwelchen Gründen gibt es Probleme mit dem setzen des Gruppenführers, obwohl es nur einen „CAPTAIN“ gibt.
Ich habe deswegen jedem Spieler in der initplayerlocal einen Wert zugeweisen
Player setVariable [„DOF_RANK“, 4, true];
4 ist ein möglicher Wert zwischen 1 – 14 (ich lasse die deutschen Dienstgradabzeichen darstellen)
https://www.youtube.com/watch?v=JDVYQIgioB4

In der ServerInit lasse ich fogendes Script laufen, welches die Gruppe Tango31 überwacht
Code:
  [] spawn 
  {
  private ["_cnt", " _grparray", _"wertearray"];
  _cnt = -1;
  _grparray = [];
  while {true} do 
  {
                  waitUntil {sleep 3; count units tango31 != _cnt};              
                  _grparray = [];
                  _wertearray = [];
                  { _grparray = _grparray + [_x] } count units tango31;
                  { _wertearray = _wertearray + [(_x getVariable "DOF_RANK")] } count units tango31; 
                  {_Wertearray_hoch = [_wertearray , 1] call BIS_fnc_findExtreme } count _grparray;
                  player sideChat format ["%1, %2, Hoch: %3", _grparray, _wertearray, _Wertearray_hoch];
                  // --- momentan deaktivierttango31 selectLeader player;          
_cnt = count units tango31;};
                  
  };
Und hier komme ich nicht weiter!
Ich brauche irgendwie eine „Verbindung“ zwischen den Arrays.
Es soll der mit dem höchsten Wert zum Gruppenführer von Tango31 gemacht werden.

Ich habe es auch mal mit einem mehrdimensionalen Array probiert, da bekomme ich es auch nicht hin.
{ _grparray = _grparray + [_x,(_x getVariable "DOF_RANK") ] } count units tango31;
__________________
Bewegende Momente bei ArmA 3

Geändert von Drunken Officer (26.05.2015 um 08:59 Uhr).
Drunken Officer ist offline