#define CONFIG_PATH "configs/steamid.txt" //создаем файл в cstrike/addons/sourcemod/configs/steamid.txt со стимами. Так: //STEAM_0:1:1234564 //STEAM_0:1:1234564 new String:g_sSteamId[50][32], g_iSizeSteamId; public OnMapStart() { //открываем файл со стимами configs/steamid.txt decl String:FilePath[256]; g_iSizeSteamId = 0; BuildPath(Path_SM, FilePath, sizeof(FilePath), CONFIG_PATH); new Handle:File = OpenFile(FilePath, "r"); if (File == INVALID_HANDLE) { SetFailState("File not found %s", FilePath); return; } while (!IsEndOfFile(File) && ReadFileLine(File, g_sSteamId[g_iSizeSteamId], 32)) { //сохраняем в глобальной переменной все стимы из файла; TrimString(g_sSteamId[g_iSizeSteamId++]); } CloseHandle(File); //выводим все стим иды для теста for(new i = 0; i < g_iSizeSteamId; i++) PrintToServer("=========>%s", g_sSteamId[i]); } public OnClientPutInServer(client)//при подключение игрока { if(CheckSteamIdClient(client))//вернет true если найдет и false если нет { PrintToChatAll("STEAM найден в файле steamid.txt!"); } else PrintToChatAll("STEAM не найден в файле steamid.txt!"); } bool:CheckSteamIdClient(client) { //проверяем стим игрока и стимы из файла на совпадение decl String:sSteam[32]; GetClientAuthString(client, sSteam, sizeof(sSteam)) for(new i = 0; i < g_iSizeSteamId; i++) { if(StrEqual(sSteam, g_sSteamId[i])) { PrintToServer("STEAM ID %s == %s", sSteam, g_sSteamId[i]); return true; } } PrintToServer("STEAM ID NOT FOUND %s", sSteam); return false; }