undercover (4)
while {alive _unit} do {
_alertedUnits = [];
_side = Resistance;
//_unit = player;
_distSqr = 20;
_knowValue = 4;
_alertedUnits = allGroups select {
if (side _x isEqualTo _side) then {
if (_x knowsAbout _unit == _knowValue) then {
if (((leader _x getHideFrom _unit) distanceSqr _unit) < _distSqr) then {
_unit setCaptive false;
}
};
};
};
};