Menu perdarymas i skirtina T ir CT

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Post Reply
life55
Gana aktyvus vartotojas
Posts: 248
Joined: 2011 Nov 05 17:24
Skype: nezinoma

Menu perdarymas i skirtina T ir CT

Post by life55 »

Sveiki, radau koduka internete, bandziau ji pasidaryti i toki, kad mentam ir teram butu skirtingos klases. Bandziau tai darydamas is rasto vipmenu (kuri meta skirtinga menu teram ir mentam), bet nieko is to nesigavo. Gal galetumet man padeti, paaiskinti?

Code: Select all

#include <amxmodx>#include <amxmisc>#include <nvault>#define MAXCLASSES 5new const CLASSES[MAXCLASSES][] = {    "None",    "Dog",    "Cat",    "Horse",    "Cow"}new const LEVELS[6] = {    100,     200,     400,     800,    1600,    3200}new PlayerXP[33],PlayerLevel[33],PlayerClass[33]new XP_Kill,XP_Knife,XP_Hs,SaveXP,g_vaultpublic plugin_init(){    register_plugin("XpMod", "1.0", "Fxfighter")     register_event("DeathMsg", "eDeath", "a")      SaveXP = register_cvar("SaveXP","1")    XP_Kill=register_cvar("XP_per_kill", "20")    XP_Hs=register_cvar("XP_hs_bonus","20")    XP_Knife=register_cvar("XP_knife_bonus","20")    g_vault = nvault_open("animod")     register_clcmd("say /class", "ChangeClass")    register_clcmd("say_team /class", "ChangeClass")    register_clcmd("say /xp", "ShowHud")    register_clcmd("say_team /xp", "ShowHud")}public eDeath(  ) {    new attacker = read_data( 1 )    new iVictim = read_data( 2 )    new headshot = read_data( 3 )    new clip, ammo, weapon = get_user_weapon(attacker,clip,ammo);     PlayerXP[attacker] += get_pcvar_num(XP_Kill)     if(headshot)    PlayerXP[attacker] += get_pcvar_num(XP_Hs)     if(weapon == CSW_KNIFE)    PlayerXP[attacker] += get_pcvar_num(XP_Knife)      while(PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]])    {      client_print(attacker, print_chat, "[Animal Mod] Congratulations! You are a level %i %s!",      PlayerLevel[attacker] += 1    }    ShowHud(attacker)    SaveData(attacker)}public ShowHud(id){    set_hudmessage(255, 0, 0, 0.75, 0.01, 0, 6.0, 15.0)    show_hudmessage(id, "Level: %i^nXP: %i^nClass: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])}public ChangeClass(id){    new menu = menu_create("Class Menu" , "Class_Handle");    menu_additem(menu ,"Dog", "1" , 0);    menu_additem(menu ,"Cat", "2" , 0);    menu_additem(menu ,"Horse", "3" , 0);    menu_additem(menu ,"Cow", "4" , 0);     menu_setprop(menu , MPROP_EXIT , MEXIT_ALL);     menu_display(id , menu , 0);     return PLUGIN_CONTINUE;}public Class_Handle(id , menu , item) {    if(item == MENU_EXIT)     {         menu_destroy(menu);     }     new szCommand[6] , szName[64];    new access , callback;     menu_item_getinfo(menu , item , access , szCommand , 5 , szName , 63 , callback);     new i = str_to_num(szCommand)    if(PlayerClass[id] != i)    {        PlayerClass[id] = i        client_print(id,print_chat,"You are now a %s",CLASSES[i])    }    else    {        client_print(id,print_chat,"You are alredy a %s",CLASSES[i])    }     menu_destroy(menu);    return PLUGIN_CONTINUE}public client_connect(id){    if(get_pcvar_num(SaveXP) == 1)    {         LoadData(id)    }}public client_disconnect(id){    if(get_pcvar_num(SaveXP) == 1)    {         SaveData(id)    }    PlayerXP[id] = 0    PlayerLevel[id] = 0    PlayerClass[id] = 0}public SaveData(id){    new AuthID[35]    get_user_authid(id,AuthID,34)     new vaultkey[64],vaultdata[256]    format(vaultkey,63,"%s-Mod",AuthID)    format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])    nvault_set(g_vault,vaultkey,vaultdata)    return PLUGIN_CONTINUE}public LoadData(id){    new AuthID[35]    get_user_authid(id,AuthID,34)     new vaultkey[64],vaultdata[256]    format(vaultkey,63,"%s-Mod",AuthID)    format(vaultdata,255,"%i#%i#",PlayerXP[id],PlayerLevel[id])    nvault_get(g_vault,vaultkey,vaultdata,255)     replace_all(vaultdata, 255, "#", " ")     new playerxp[32], playerlevel[32]     parse(vaultdata, playerxp, 31, playerlevel, 31)     PlayerXP[id] = str_to_num(playerxp)    PlayerLevel[id] = str_to_num(playerlevel)     return PLUGIN_CONTINUE}

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests