Ще ми трябва loop цикъл зада проверява всички добавени никове и стеам ид-та и да ги сравнява,с тези на играчите.
При проверката която имам в кода,ми изкарва,че в указателя имам запаметени 8 играча,но незнам как да ги вкарам в друга публична функция
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <amxmisc>
#include <cromchat>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "IOCOCVETI"
enum
{
SECTION_SETTINGS = 1,
SECTION_RANKS
}
enum _:eSettings
{
Prefix[64]
}
new g_eSettings[eSettings]
new szKey[64],szValue[32]
new Trie:g_tRegNameSteam
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_countkills", "cmdReset", ADMIN_KICK, "-- pokazva kolko elementi sa zapazeni v ukazatelq")
CC_SetPrefix(g_eSettings[Prefix])
}
public plugin_precache()
{
g_tRegNameSteam = TrieCreate()
ReadFile()
}
public end()
{
TrieDestroy(g_tRegNameSteam)
}
ReadFile()
{
static szFilename[256],iFilePointer
get_configsdir(szFilename, charsmax(szFilename))
add(szFilename, charsmax(szFilename), "/RegNickSteam.ini")
iFilePointer = fopen(szFilename, "rt")
if(iFilePointer)
{
static szData[32],iSection
while(!feof(iFilePointer))
{
fgets(iFilePointer, szData, charsmax(szData))
trim(szData)
if (szData[0] == E0S || szData[0] == ';' || (szData[0] == '/' && szData[1] == '/'))
continue
switch(szData[0])
{
case E0S, ';': continue
case '[':
{
if (szData[strlen(szData) - 1] == ']')
{
if (containi(szData, "settings") != -1)
iSection = SECTION_SETTINGS
else if (containi(szData, "ranks") != -10)
iSection = SECTION_RANKS
}
else
continue
}
default:
{
switch(iSection)
{
case SECTION_SETTINGS:
{
strtok(szData, szKey, charsmax(szKey), szValue, charsmax(szValue), '/')
trim(szKey)
trim(szValue)
if (szValue[0] == E0S)
continue
if (equal(szKey, "PREFIX"))
copy(g_eSettings[Prefix], charsmax(g_eSettings[Prefix]), szValue)
}
case SECTION_RANKS:
{
strtok(szData, szKey, charsmax(szKey), szValue, charsmax(szValue), '/')
trim(szKey)
trim(szValue)
if (szValue[0] == E0S)
continue
TrieSetString(g_tRegNameSteam,szKey,szValue)
}
}
}
}
}
fclose(iFilePointer)
}
}
public client_authorized(id)
{
new szName[32],szSteam[35],szSteamS[35]
get_user_name(id,szName,charsmax(szName))
get_user_authid(id,szSteam,charsmax(szSteam))
if(TrieKeyExists(g_tRegNameSteam, szName))
{
TrieGetString(g_tRegNameSteam,szName,szSteamS,charsmax(szSteamS))
if(!equal(szSteam,szSteamS))
server_cmd("kick #%i ^"Your SteamID/Name is Protected!^"", get_user_userid(id))
}
}
public client_infochanged(id)
{
if (!is_user_connected(id))
return PLUGIN_HANDLED
new szNames[2][32]
get_user_name(id, szNames[0], charsmax(szNames[]))
get_user_info(id, "name", szNames[1], charsmax(szNames[]))
if(!equal(szNames[1],szNames[0]))
{
server_cmd("kick #%i ^"Your SteamID/Name is Protected!^"", get_user_userid(id))
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public cmdReset(id, iLevel, iCid)
{
if(!cmd_access(id, iLevel, iCid, 1))
return PLUGIN_HANDLED
client_print(id, print_console, "* Zapazeni sa ubiistvata na %i igrachi.", TrieGetSize(g_tRegNameSteam))
return PLUGIN_HANDLED
}