Страница 1 от 1

nvault_prune • изчиства даден сейф

Публикувано на: 16 Окт 2016, 20:46
от OciXCrom
nvault.incnative nvault_prune(vault, start, end)

vault: указател на сейфа
start: от
end: до

Връща: нищо
Функцията премахва всички записи в сейфа намиращи се в интервала на даденото време (start/end). Изключения правят данните добавени с функцията nvault_pset.
Примерен плъгин №1: Запазване на убийствата и умиранията на играчите завинаги. Командата nvault_clear ще рестартира статистиката на всички играчи.

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <nvault>

#define PLUGIN_NAME "nVault Example"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "AMXX-BG.info"

new g_iVault

public plugin_init()
{
    register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
    register_concmd("nvault_clear", "cmdClear", ADMIN_RCON, "-- restartira statistikata na vsichkii igrachi")
    g_iVault = nvault_open("MyVault")
}

public plugin_end()
    nvault_close(g_iVault)

public client_putinserver(id)
    UseVault(id, 1)
    
public client_disconnect(id)
    UseVault(id, 0)

UseVault(id, iType)
{        
    new szName[32], szData[16]
    get_user_name(id, szName, charsmax(szName))
    
    switch(iType)
    {
        case 0:
        {
            formatex(szData, charsmax(szData), "%i|%i", get_user_frags(id), cs_get_user_deaths(id))
            nvault_set(g_iVault, szName, szData)
        }
        case 1:
        {
            nvault_get(g_iVault, szName, szData, charsmax(szData))
            replace_all(szData, charsmax(szData), "|", " ")
            
            new szArg[2][8]
            parse(szData, szArg[0], charsmax(szArg[]), szArg[1], charsmax(szArg[]))
            set_user_frags(id, str_to_num(szArg[0]))
            cs_set_user_deaths(id, str_to_num(szArg[1]))
        }
    }
}

public cmdClear(id, iLevel, iCid)
{
    if(!cmd_access(id, iLevel, iCid, 1))
        return PLUGIN_HANDLED
        
    nvault_prune(g_iVault, 0, get_systime() + 1)
    
    new szName[32]
    get_user_name(id, szName, charsmax(szName))
    client_print(0, print_chat, "* Adminut %s restartira statistikata na vsichki igrachi", szName)
    return PLUGIN_HANDLED
}