Open DIS-Wolv opened 1 year ago
un petit test qui peux aiguillé sur comment faire :
_locs = nearestLocations[position player, ODD_var_LocationType, 50];
loc = _locs select 0;
text loc;
2. puis ca permet de faire spawn un cone la ou on pense que c'est ok
```sqf
// variables
_posp = position player;
_poszo = position loc;
_distZo = _posp distance2D _poszo;
_seuil = 200;
if (_distZo >= _seuil) then { // si joueur loin
_dirZO = _posp getdir _poszo;
_newpos = _poszo getPos [(_seuil/2), _dirZO];
// recup les batiment
_spawnBuild = nearestobjects [_newpos, ODD_var_Houses, (_seuil/4)];
// en choisis un
_spawnBat = selectRandom _spawnBuild;
//récupère les positons dans le batiment (meme position que les garnison ACE)
_spawnPosS = [_spawnBat] call BIS_fnc_buildingPositions;
private _spawnPos = 0;
if (count _spawnPosS > 0) then { // si plusieurs, en choisie une
_spawnPos = selectRandom _spawnPosS;
}
else { //sinon prend la pos du bat
_spawnPos = position _spawnBat;
};
// position en ATL
_spawnPos = ASLToATL _spawnPos;
// pour mon teste je spawn un conne
"RoadCone_F" createVehicle _spawnPos;
// la je regarde la visibilité de la position par le joueur
_vis = [objNull, "VIEW"] checkVisibility [_posp, _spawnPos];
_vis
// test la dessus pour voir si on peux faire spawn les gars
}
else { // si joueur proche
_dir = random 360;
_spawnPos = _poszo getPos [(_seuil*2), _dir];
"RoadCone_F" createVehicle _spawnPos;
_vis = [objNull, "VIEW"] checkVisibility [_posp, _spawnPos];
_vis
};
on peux aussi check la visibilité comme ca :
A = eyePos player;
B = eyePos player;
[objNull, "VIEW"] checkVisibility [a, b];
l'idée est de faire spawn que une partie des patrouilles a la fois ( par exemple 4) et de les faire respawn au fur et a mesure qu'elle meurt