private["_max","_j","_menuCheckOk"]; _menuCheckOk = false; _max = 10; _j = 0; pMenuTitle = "Spectate Player:"; snext = false; plist = []; pselect5 = ""; {plist set [count plist, name _x];} forEach playableUnits; {if ((count crew _x) > 0) then {{if ((_x != player) && (getPlayerUID _x != "")) then {plist set [count plist, name _x];};} forEach crew _x;};} foreach (entities "LandVehicle" + entities "Air" + entities "Ship"); while {pselect5 == "" && !_menuCheckOk} do { [_j, (_j + _max) min (count plist)] call fn_smenu; _j = _j + _max; WaitUntil {pselect5 != "" || snext || commandingMenu == ""}; _menuCheckOk = (commandingMenu == ""); snext = false; }; if (pselect5!= "exit" && pselect5!="") then { _name = pselect5; { if(format[name _x] == _name) then { createGearDialog [(_x), "RscDisplayGear"]; }; } forEach playableUnits; };