Как получить index и userid игрока
Если вы хотите выполнить команду на всех игроках, то это можно сделать с помощью цикла:
Код
for (new i = 1; i <= MaxClients; i++)
{
if (IsClientInGame(i))
{
PrintToServer("Найден игрок %N (его индекс: %d)", i, i);
PrintToServer("userid = %d", GetClientUserId(i));
}
}
MaxClients - максимум слотов на сервере (число). Индекс игрока не может быть больше, чем это число.
Вместо IsClientInGame(i) можно использовать IsClientConnected(i).
Получаем индекс и ид родившегося игрока:
Код
#include <sourcemod>
public OnPluginStart()
{
HookEvent("player_spawn", player_spawn);
}
public player_spawn(Handle:event, const String:name[], bool:dontBroadcast)
{
new id = GetEventInt(event, "userid");
new index = GetClientOfUserId(id);
// Если нам нужен только index, проще сделать так:
new client = GetClientOfUserId(GetEventInt(event, "userid"));
}
Если вы хотите получить индекс случайного игрока, то есть готовая функция в этой теме.