TrieCreate • създава указател
Публикувано на: 12 Окт 2016, 21:20
Указателите са подобни на масивите, като в тях можете да запазвате стойности под даден "ключ", който представлява стринг. Всеки ключ е уникален, тъй че не може да има повече от един запис в един и същ ключ. Всеки един указател трябва да бъде унищожен в края на плъгина, използвайки функцията TrieDestroy().
Примерен плъгин №1: Запазване на броя на убийства на играча до края на картата, тоест убийствата му няма да се рестартират ако напусне сървъра и отново се завърне.
Примерен плъгин №1: Запазване на броя на убийства на играча до края на картата, тоест убийствата му няма да се рестартират ако напусне сървъра и отново се завърне.
Код за потвърждение: Избери целия код
#include <amxmodx>
#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)
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))
}