Как получить индекс случайного игрока
Можете использовать эту функцию:
Код
stock GetRandomClient(bool:bot = false, bool:alive = true, team = 0)
{
new count = 0, players[MaxClients];
for (new i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i)
&& bot == IsFakeClient(i)
&& alive == IsPlayerAlive(i)
&& !(team > 0 && team != GetClientTeam(i)))
{
players[count++] = i;
}
}
return count > 0 ? players[GetRandomInt(0, count - 1)] : -1;
}
Примеры:
Код
// Получить случайного живого игрока не бота
new target = GetRandomClient();
// Получить мертвого CT бота
new target = GetRandomClient(true, false, 3);
if (target != -1) // или if (target > 0)
{
// случайный игрок успешно выбран
}