Probiere das einmal
Du läßt in der
InitServer.sqf folgendes laden
Code:
DOF_SpawnHunters=
{
private ["_var_spawncenter", "_relPos", "_grp", "_einheiten", "_set_mindis", "_set_maxdis", "_set_minstrength", "_set_maxstrength", "_set_rounds", "_set_roundsdelay", "_groupside"];
if (isMultiplayer) then {_einheiten = playableUnits} else {_einheiten = switchableUnits };
_set_mindis = (_this select 0) select 0;
_set_maxdis = (_this select 0) select 1;
_set_minstrength = (_this select 1) select 0;
_set_maxstrength = (_this select 1) select 1;
_set_rounds = (_this select 2) select 0;
_set_roundsdelay = (_this select 2) select 1;
_groupside = _this select 3;
if (_set_maxdis < _set_mindis) then { _set_maxdis = _set_mindis};
for "_i" from 1 to _set_rounds do
{
_var_spawncenter = switchableUnits call bis_fnc_selectrandom;
_safepos = [position _var_spawncenter,_set_mindis,_set_maxdis,20,0,2000,0] call BIS_fnc_findSafePos;
_dif = (_set_maxstrength - _set_minstrength) ;
_groupmember = _set_minstrength + round (random _dif);
_grp=[_safepos, _groupside, _groupmember] call BIS_fnc_spawnGroup;
hint str (count units _grp);
[_grp] spawn DOF_Hunting;
sleep _set_roundsdelay;
};
};
DOF_Hunting =
{
private ["_wph", "_grp", "_pos", "_mindis", "_getdis", "_einheiten"];
if (isMultiplayer) then {_einheiten = playableUnits} else {_einheiten = switchableUnits };
_grp = (_this select 0);
_wph = _grp addwaypoint [[0,0,0], 0];
_wph setWaypointtype "SAD";
_wph setWaypointSpeed "FULL";
_wph setWaypointBehaviour "AWARE";
while {({alive _x} count units _grp != 0) } do
{
{
_getdis = (leader _grp) distance _x;
if (isNil "_mindis") then {_pos = getPos _x; _mindis = _getdis};
if (_getDis < _mindis ) then {_pos = getPos _x; _mindis = _getDis };
} forEach _einheiten ;
player groupChat format ["Kürzeste Distance %1", _mindis];
if ( waypointPosition _wph distance _pos > 30) then
{
_wph setWaypointPosition [_pos, 0];
};
_mindis = nil;
sleep 30;
};
};
Der Aufruf im Spiel durch den Server erfolgt dann so:
hunters=[[20,90], [4,6],[5,7], Resistance ] spawn DOF_SpawnHunters
Block 1
20 = minimale Distanz
90 = maximale Distanz
Block 2
4 minimale Gruppenstärke
6 maximale Gruppenstärke
Block 3
5 anzahl der Gruppen
7 Verzögerung beim Spawn
Block 4
Restistance = seite der Gruppe
[WEST, EAST, RESISTANCE, CIVILAN
Hoffe du kommst klar damit