[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Форум » Уроки SourceMod (SourcePawn) Скриптинга » Как получить индекс и userid игрока (Взято с world-source.ru)
Как получить индекс и userid игрока
rootДата: Воскресенье, 03.02.2013, 00:57 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 561
Статус: Offline
Как получить 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"));   
}

Если вы хотите получить индекс случайного игрока, то есть готовая функция в этой теме.
 
Форум » Форум » Уроки SourceMod (SourcePawn) Скриптинга » Как получить индекс и userid игрока (Взято с world-source.ru)
  • Страница 1 из 1
  • 1
Поиск: