Page 1 of 1

Ammo packs

Posted: 2011 Jul 15 11:35
by eNeMy
Gal turit pluginą kuris išsaugotų ammo pack pagal steamID, o jei nėra steamID pagal IP? Nes visus kuriuos randu tai tik 1/2.

Re: Ammo packs

Posted: 2011 Jul 17 20:10
by Aurimas
Tai numesk tų pluginų kodą, bandysim tvarkyt.

Re: Ammo packs

Posted: 2011 Jul 17 20:29
by eNeMy

Code: Select all

#include <amxmodx>#include <fakemeta>#include <zombieplague>#include <nvault> #define PLUGIN  "[ZP] Can Auto Save Ammo"#define VERSION "0.1.0"#define AUTHOR  "HsK" new g_save, g_ammo[33], g_ammo_can_save[33]new cvar_save_in #define MAX_SAVE 500    //can save.... public plugin_init(){    register_plugin(PLUGIN, VERSION, AUTHOR)     register_event("DeathMsg","event_deathmsg","a")    register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")     cvar_save_in = register_cvar("zp_ammo_save_in", "0")            // 0 = name / 1 = ip / 2 = steam id     g_save = nvault_open("g_ammo_save")} // Save Ammopublic zp_user_infected_post(id, infector){    if (g_ammo_can_save[infector])        Save_Ammo_date(infector)        if (g_ammo_can_save[id])        Save_Ammo_date(id)} public zp_extra_item_selected(id, itemid){    if (g_ammo_can_save[id])        Save_Ammo_date(id)} public event_deathmsg(){    new killer = read_data(1)    new victim = read_data(2)     if (!killer && !victim)        return PLUGIN_CONTINUE;     if (g_ammo_can_save[killer])        Save_Ammo_date(killer)                if (g_ammo_can_save[victim])        Save_Ammo_date(victim)     return PLUGIN_CONTINUE;} public fw_PlayerPreThink(id){    if (g_ammo_can_save[id])    {        new ammo_packs = zp_get_user_ammo_packs(id)        g_ammo[id] = ammo_packs    }     return FMRES_IGNORED;} public client_disconnect(id){    if(g_ammo_can_save[id])        Save_Ammo_date(id)} public client_putinserver(id)    set_task(2.0, "now_can_save", id) public now_can_save(id){    Load_Ammo_date(id)    set_task(0.5, "can_save_true", id)} public can_save_true(id)    g_ammo_can_save[id] = true public Save_Ammo_date(id){    new vaultkey[64], vaultdata[256]     switch (get_pcvar_num(cvar_save_in))    {        case 0:        {            new name[33];            get_user_name(id,name,32)                        format(vaultkey, 63, "%s-/", name)        }        case 1:        {            new player_ip[33]            get_user_ip(id, player_ip, 32);             format(vaultkey, 63, "%s-/", player_ip)        }        case 2:        {            new AuthID[33];            get_user_authid(id, AuthID, 32);                        formatex(vaultkey, 64, "%s-/", AuthID);        }    }     format(vaultdata, 255, "%i#", g_ammo[id])        nvault_set(g_save, vaultkey, vaultdata)    return PLUGIN_CONTINUE;} public Load_Ammo_date(id){    new vaultkey[64], vaultdata[256]     switch (get_pcvar_num(cvar_save_in))    {        case 0:        {            new name[33];            get_user_name(id,name,32)                        format(vaultkey, 63, "%s-/", name)        }        case 1:        {            new player_ip[33]            get_user_ip(id, player_ip, 32);             format(vaultkey, 63, "%s-/", player_ip)        }        case 2:        {            new AuthID[33];            get_user_authid(id, AuthID, 32);                        formatex(vaultkey, 64, "%s-/", AuthID);        }    }     format(vaultdata, 255, "%i#", g_ammo[id])        nvault_get(g_save, vaultkey, vaultdata, 255)    replace_all(vaultdata, 255, "#", " ")        new playammo[32]    parse(vaultdata, playammo, 31)    g_ammo[id] = str_to_num(playammo)        set_ammo(id)        return PLUGIN_CONTINUE;} public set_ammo(id){    if (g_ammo[id] > MAX_SAVE)    {        zp_set_user_ammo_packs(id, MAX_SAVE)        g_ammo[id] = MAX_SAVE    }    else        zp_set_user_ammo_packs(id, g_ammo[id])    client_print(id, print_chat, "Your Ammo is  :  %d ", g_ammo[id])}

Re: Ammo packs

Posted: 2011 Jul 17 21:26
by Aurimas

Code: Select all

    #include <amxmodx>    #include <fakemeta>    #include <zombieplague>    #include <nvault>         #define PLUGIN  "[ZP] Can Auto Save Ammo"    #define VERSION "0.1.0"    #define AUTHOR  "HsK"         new g_save, g_ammo[33], g_ammo_can_save[33]    new cvar_save_in         #define MAX_SAVE 500    //can save....         public plugin_init()    {        register_plugin(PLUGIN, VERSION, AUTHOR)             register_event("DeathMsg","event_deathmsg","a")        register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")             cvar_save_in = register_cvar("zp_ammo_save_in", "0")            // 0 = name / 1 = ip or steam id             g_save = nvault_open("g_ammo_save")    }         // Save Ammo    public zp_user_infected_post(id, infector)    {        if (g_ammo_can_save[infector])            Save_Ammo_date(infector)               if (g_ammo_can_save[id])            Save_Ammo_date(id)    }         public zp_extra_item_selected(id, itemid)    {        if (g_ammo_can_save[id])            Save_Ammo_date(id)    }         public event_deathmsg()    {        new killer = read_data(1)        new victim = read_data(2)             if (!killer && !victim)            return PLUGIN_CONTINUE;             if (g_ammo_can_save[killer])            Save_Ammo_date(killer)                       if (g_ammo_can_save[victim])            Save_Ammo_date(victim)             return PLUGIN_CONTINUE;    }         public fw_PlayerPreThink(id)    {        if (g_ammo_can_save[id])        {            new ammo_packs = zp_get_user_ammo_packs(id)            g_ammo[id] = ammo_packs        }             return FMRES_IGNORED;    }         public client_disconnect(id)    {        if(g_ammo_can_save[id])            Save_Ammo_date(id)    }         public client_putinserver(id)        set_task(2.0, "now_can_save", id)         public now_can_save(id)    {        Load_Ammo_date(id)        set_task(0.5, "can_save_true", id)    }         public can_save_true(id)        g_ammo_can_save[id] = true         public Save_Ammo_date(id)    {        new vaultkey[64], vaultdata[256]             switch (get_pcvar_num(cvar_save_in))        {            case 0:            {                new name[33];                get_user_name(id,name,32)                               format(vaultkey, 63, "%s-/", name)            }            case 1:            {                new player_ip[33];                new AuthID[33];                get_user_ip(id, player_ip, 32);                get_user_authid(id, AuthID, 32);                     if(equal(AuthID, "VALVE_ID_LAN") || equal(AuthID, "STEAM_ID_LAN"))                {                       format(vaultkey, 63, "%s-/", player_ip)                }                else                {                    formatex(vaultkey, 64, "%s-/", AuthID);                }            }        }             format(vaultdata, 255, "%i#", g_ammo[id])               nvault_set(g_save, vaultkey, vaultdata)        return PLUGIN_CONTINUE;    }         public Load_Ammo_date(id)    {        new vaultkey[64], vaultdata[256]             switch (get_pcvar_num(cvar_save_in))        {            case 0:            {                new name[33];                get_user_name(id,name,32)                               format(vaultkey, 63, "%s-/", name)            }            case 1:            {                new player_ip[33];                new AuthID[33];                get_user_ip(id, player_ip, 32);                get_user_authid(id, AuthID, 32);                     if(equal(AuthID, "VALVE_ID_LAN") || equal(AuthID, "STEAM_ID_LAN"))                {                    format(vaultkey, 63, "%s-/", player_ip)                }                else                {                    formatex(vaultkey, 64, "%s-/", AuthID);                }            }        }             format(vaultdata, 255, "%i#", g_ammo[id])               nvault_get(g_save, vaultkey, vaultdata, 255)        replace_all(vaultdata, 255, "#", " ")               new playammo[32]        parse(vaultdata, playammo, 31)        g_ammo[id] = str_to_num(playammo)               set_ammo(id)               return PLUGIN_CONTINUE;    }         public set_ammo(id)    {        if (g_ammo[id] > MAX_SAVE)        {            zp_set_user_ammo_packs(id, MAX_SAVE)            g_ammo[id] = MAX_SAVE        }        else            zp_set_user_ammo_packs(id, g_ammo[id])        client_print(id, print_chat, "Your Ammo is  :  %d ", g_ammo[id])    }
Netestavau.

zp_ammo_save_in = 1

Re: Ammo packs

Posted: 2011 Jul 18 12:10
by aaarnas

Code: Select all

#include <amxmodx>#include <fakemeta>#include <zombieplague>#include <nvault> #define PLUGIN  "[ZP] Can Auto Save Ammo"#define VERSION "0.1.0"#define AUTHOR  "HsK" new g_save, g_ammo[33], g_ammo_can_save[33] #define MAX_SAVE 500    //can save.... public plugin_init(){    register_plugin(PLUGIN, VERSION, AUTHOR)        register_event("DeathMsg","event_deathmsg","a")    register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")        g_save = nvault_open("g_ammo_save")} // Save Ammopublic zp_user_infected_post(id, infector){    if (g_ammo_can_save[infector])        Save_Ammo_date(infector)        if (g_ammo_can_save[id])        Save_Ammo_date(id)} public zp_extra_item_selected(id, itemid){    if (g_ammo_can_save[id])        Save_Ammo_date(id)} public event_deathmsg(){    new killer = read_data(1)    new victim = read_data(2)        if (!killer && !victim)        return PLUGIN_CONTINUE;        if (g_ammo_can_save[killer])        Save_Ammo_date(killer)        if (g_ammo_can_save[victim])        Save_Ammo_date(victim)        return PLUGIN_CONTINUE;} public fw_PlayerPreThink(id){    if (g_ammo_can_save[id])    {        new ammo_packs = zp_get_user_ammo_packs(id)        g_ammo[id] = ammo_packs    }        return FMRES_IGNORED;} public client_disconnect(id){    if(g_ammo_can_save[id])        Save_Ammo_date(id)} public client_putinserver(id)    set_task(2.0, "now_can_save", id) public now_can_save(id){    Load_Ammo_date(id)    set_task(0.5, "can_save_true", id)} public can_save_true(id)    g_ammo_can_save[id] = true public Save_Ammo_date(id){    new vaultkey[64], vaultdata[256]        new auth[40]    get_user_authid(id, auth, charsmax(auth))    if(!equal(auth, "STEAM_0", 7)) get_user_ip(id, auth, charsmax(auth), 1)        formatex(vaultkey, 63, "%s-/", auth)            format(vaultdata, 255, "%i#", g_ammo[id])        nvault_set(g_save, vaultkey, vaultdata)    return PLUGIN_CONTINUE;} public Load_Ammo_date(id){    new vaultkey[64], vaultdata[256]        new auth[40]    get_user_authid(id, auth, charsmax(auth))    if(!equal(auth, "STEAM_0", 7)) get_user_ip(id, auth, charsmax(auth), 1)        formatex(vaultkey, 63, "%s-/", auth)        format(vaultdata, 255, "%i#", g_ammo[id])        nvault_get(g_save, vaultkey, vaultdata, 255)    replace_all(vaultdata, 255, "#", "")        new playammo[32]    parse(vaultdata, playammo, 31)    g_ammo[id] = str_to_num(playammo)        set_ammo(id)        return PLUGIN_CONTINUE;} public set_ammo(id){    if (g_ammo[id] > MAX_SAVE)    {        zp_set_user_ammo_packs(id, MAX_SAVE)        g_ammo[id] = MAX_SAVE    }    else        zp_set_user_ammo_packs(id, g_ammo[id])    client_print(id, print_chat, "Your Ammo is  :  %d ", g_ammo[id])}
Jei žaidėjas turi steam id, tai saugos pagal steam id, jei neturi - saugos pagal ip.

Re: Ammo packs

Posted: 2011 Jul 18 19:42
by beast
Ko jūs čia vargstate su tais dvigubais saugojimais... pasidarot dproto steamid generavimą pagal IP ir vargo nematot...