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