Примерен плъгин №1: Запазване на броя на убийства на играча до края на картата, тоест убийствата му няма да се рестартират ако напусне сървъра и отново се завърне. С командата amx_resetkills ще бъдат рестартирани всички убийства, включителни и тези, които са били запазени в указателя.
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <amxmisc>
#include <fun>
#define PLUGIN_NAME "TrieCreate"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"
new Trie:g_tFrags
public plugin_init()
{
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
register_concmd("amx_resetkills", "cmdReset", ADMIN_RCON, "-- resets all kills")
g_tFrags = TrieCreate()
}
public plugin_end()
TrieDestroy(g_tFrags)
public client_putinserver(id)
{
new szName[32]
get_user_name(id, szName, charsmax(szName))
if(TrieKeyExists(g_tFrags, szName))
{
new iFrags
TrieGetCell(g_tFrags, szName, iFrags)
set_user_frags(id, iFrags)
}
}
public client_disconnect(id)
{
new szName[32]
get_user_name(id, szName, charsmax(szName))
TrieSetCell(g_tFrags, szName, get_user_frags(id))
}
public cmdReset(id, iLevel, iCid)
{
if(!cmd_access(id, iLevel, iCid, 1))
return PLUGIN_HANDLED
TrieClear(g_tFrags)
client_print(0, print_chat, "* All kills have been reset.")
return PLUGIN_HANDLED
}