Смысл в том … эээ …
_locations = nearestLocations [getPos Player,["nameCity","nameVillage"],5000]; - здесь точкой отсчета идет игрок и от него 5000.
Чтобы не привязывать эту команду к игроку, а привязать ее к триггеру для того чтобы локации определялись только в поставленном триггере (см.выше) вместо игрока используем триггер (Trigger), а в место 5000, его радиус:
_locations = nearestLocations [getPos Trigger,["nameCity","nameVillage"],Trigger radius];
Вот и весь смысл - просто так красивей наверное. )
D_Donskoy, поскольку команды типа nearestLocations производят поиск только в пределах круга (частный случай эллипса), то надо указать радиус окружности, описанной вокруг триггера, а потом ещё отфильтровать найденное.
Триггер может быть прямоугольником или эллипсом. В первом случае радиус будет равен половине диагонали, во втором -- большей полуоси.
Итого:
_area = triggerArea _trigger;
_sizes = _area select [0, 2];
_isRectangle = _area select 3;
_radius = if (_isRectangle) then {
sqrt ((_sizes # 0) ^ 2 + (_sizes # 1) ^ 2);
} else {
selectMax _sizes;
};
_locations = nearestLocations [..., _radius];
_locations = _locations select {_x inArea _area};
Да, супер - спасибо.
Миссия развивается и назрел следующий вопрос:
_Town_Patrol = [_SafePos, EAST, 2] call BIS_fnc_spawnGroup;
Как обратится именно ко второму или третьему члену группы _Town_Patrol?
Т.е. - _groupmember = nameofgroup select 1; - почему то не работает.
Смысл в том, чтобы каждого члена группы поставить на свое место "БИЛДИНГА".
_buildings = nearestObjects [WarFare_Zone, ["Land_Cargo_HQ_V1_F"],10000];
_count_buildings = count _buildings;
{
_buildingPos = _x call BIS_fnc_buildingPositions;
{
_HQ_Guard = [_x, EAST, 5] call BIS_fnc_spawnGroup;
} forEach _buildingPos;
} forEach _buildings;
Edited by D_Donskoy, 12 October 2018 - 00:58.