Примерен плъгин №1: Запазване на убийствата и умиранията на играча до края на картата.
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <cstrike>
#include <fun>
#define PLUGIN_NAME "TrieSetArray"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "OciXCrom"
enum _:PlayerData
{
Frags,
Deaths
}
new Trie:g_tPlayerData
public plugin_init()
{
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
g_tPlayerData = TrieCreate()
}
public plugin_end()
TrieDestroy(g_tPlayerData)
public client_putinserver(id)
{
new szName[32]
get_user_name(id, szName, charsmax(szName))
if(TrieKeyExists(g_tPlayerData, szName))
{
new eData[PlayerData]
TrieGetArray(g_tPlayerData, szName, eData, sizeof(eData))
set_user_frags(id, eData[Frags])
cs_set_user_deaths(id, eData[Deaths])
}
}
public client_disconnect(id)
{
new szName[32]
get_user_name(id, szName, charsmax(szName))
new eData[PlayerData]
eData[Frags] = get_user_frags(id)
eData[Deaths] = get_user_deaths(id)
TrieSetArray(g_tPlayerData, szName, eData, sizeof(eData))
}