Cerere Ajutor Plugin - Ajutor Gaming - EnjoyGame România 2018

[RECLAMA] Metin2 Shura

Jump to content
Sign In

Sign In



Register

Bine ati venit pe EnjoyGame!

Sign in to follow this  
Fy|XGold

Cerere Ajutor Plugin

Recommended Posts

Nu pot complia pluginul de mai jos 

eroare la linia 1072, 1073 , 1093, 1092 undefined symbol

 

sursa

#include <amxmodx> 
#include <amxmisc> 
#include <fakemeta>    
#include <hamsandwich> 
#include <fakemeta_util>  
#include <cstrike> 
#include <engine>
#include <fun> 
#include <nvault> 


new const PLUGIN[] = "Global Offensive";
new const VERSION[] = "Final";
new const AUTHOR[] = "zorken";

#define MAX 100

#define PointsMin 3
#define PointsMax 8
#define Drop 10
#define MarkMin 299
#define METR_UNITS 39.37

#define WEAPONSKIN 11

#define FAMAS 15 
#define USP 16
#define GLOCK18 17
#define AWP 18
#define MP5NAVY 19
#define M3 21 
#define M4A1 22
#define DEAGLE 26
#define AK47 28
#define KNIFE 29
#define P90 30

new const TeamNames[][] = {
    "",
    "Terrorist",
    "Counter-Terrorist"
}
new tMenu
new playj
new viewj[33]
new round[33]
new jackpot
new inJack[33]
new itemj[10]
new tradeups[33]
new jack[33]
new acc[33]
new secs = 60
new selectate[33]
new select[5][33]
new selects[5][33]
new bool:nosend[33]
new tTarget[33]
new go[33]
new sec = 60
new Rosu[33]
new Gri[33]
new ruleta = 0
new playr
new Galben[33]
new selectatec[33]
new selectates[33]
new selectatek[33]
new ssvault
new rLine[2520]
new svault
new rvault
new trackvault
new const g_vault_reg[] = "reg"
new const g_vault_skin[] = "skin"
new const g_vault_sskin[] = "sskin"
new const g_vault_track[] = "stattrack"
new invitat[33] = 0;
new WeaponNames[MAX+1][33], WeaponMdls[MAX+1][48], Weapons[MAX+1], WeaponDrop[MAX+1], WeaponMax[MAX+1], WeaponMin[MAX+1], AllWeapon;
new UsingWeapon[WEAPONSKIN][33], uWeapon[MAX+1][33], Chest[33], pKey[33], Points[33], Rang[33], Kills[33],
aThing[33], aTarget[33], aPoints[33], Prefix[32];
new Folder[48], SkinFile[48], RangFile[48], MenuMod[33], SayText;
new WeaponinMarket[33], inMarket[33], MarketPoints[33], Choosen[33];
new SavedPassword[33][32], bool:Loged[33], Password[33][32];
new NeedKills[30], Rangs[30][32];
new nr[7][8];
new stattrack[MAX+1][33];
new kill[MAX+1][33];
new rem[33];
new coldown[MAX+1][33]
new pbet[33]
new bround
new tradeup[33]
new contr[10][33]
new g_dropchace;
new betp[33]
new arg1[1260];
new arg2[1260];
    

public plugin_precache() {
    new Line[128], Data[6][48], Len;
    AllWeapon++;
    get_configsdir(Folder, 47);
    format(SkinFile, 47, "%s/csgo/skins.cfg", Folder);
    format(RangFile, 47, "%s/csgo/rangs.cfg", Folder);
    format(Prefix, 31, "[Global Offensive]");
    formatex(nr[0], 7, "\w-");
    formatex(nr[1], 7, "\w-");
    formatex(nr[2], 7, "\w-");
    formatex(nr[3], 7, "\w-");
    formatex(nr[4], 7, "\w-");
    formatex(nr[5], 7, "\w-");
    formatex(nr[6], 7, "\w-"); 
    
    if(file_exists(RangFile))
    {
        for(new i; i < file_size(RangFile, 1); i++)
        {
            read_file(RangFile, i, Line, 127, Len);
            parse(Line, Data[0], 31, Data[1], 31);
            
            copy(Rangs, 31, Data[0]);
            NeedKills = str_to_num(Data[1]);
        }
    }
    if(file_exists(SkinFile))
    {
        for(new i; i < file_size(SkinFile, 1); i++)
        {
            read_file(SkinFile, i, Line, 127, Len);
            
            if(strlen(Line) < 5 || Line[0] == ';' || AllWeapon == MAX+1)
                continue;
            
            parse(Line, Data[0], 31, Data[1], 31, Data[2], 47, Data[3], 31, Data[4], 31, Data[5], 31);
            
            Weapons[AllWeapon] = str_to_num(Data[0]);
            copy(WeaponNames[AllWeapon], 31, Data[1]);
            
            if(ValidMdl(Data[2])) {
                precache_model(Data[2]);
                copy(WeaponMdls[AllWeapon], 47, Data[2]); 
            }
            
            WeaponDrop[AllWeapon] = str_to_num(Data[3]);
            WeaponMin[AllWeapon] = str_to_num(Data[4])
            WeaponMax[AllWeapon] = str_to_num(Data[5])
            AllWeapon++;
        }
        if(AllWeapon == 0)
            log_amx("Niciun skin on");
    }

}
public plugin_init() {
    register_dictionary("go.txt");
    register_plugin(PLUGIN, VERSION, AUTHOR);
    register_cvar(PLUGIN, VERSION, FCVAR_SERVER);
    
    register_clcmd("say /menu", "MenuOpen");
    register_clcmd("say /reg", "RegMenu");
    register_clcmd("say /m", "MenuOpen");
    register_clcmd("say /register", "RegMenu");
    //register_clcmd("say /stf", "stefan");
    register_clcmd("say /accept", "acctrade");
    register_clcmd("say /refuz", "reftrade");
    register_concmd("Cost", "MarketCost"); 
    register_concmd("Rosu", "RosuRuleta");
    register_concmd("Galben", "GalbenRuleta");
    register_concmd("Gri", "GriRuleta");
    register_event("DeathMsg", "event_DeathMsg", "a");
    register_concmd("Gift", "GiftPoint");
    register_concmd("T", "Tbet");
    register_concmd("CT", "CTbet");
    register_concmd("UserPassword", "PlayerPassword");
    register_concmd("amx_givekey", "give_key", ADMIN_MENU, "<nume> <Amount>");
    register_concmd("amx_giveskins", "give_skins", ADMIN_MENU, "<nume>");
    register_concmd("amx_givestat", "give_stat", ADMIN_MENU, "<nume>");
    register_concmd("amx_takeskins", "take_skins", ADMIN_MENU, "<nume>");
    register_concmd("amx_givechest", "give_chest", ADMIN_MENU, "<nume> <Amount>");
    register_concmd("amx_givepoints", "give_puncte", ADMIN_MENU, "<nume> <Amount>");

    register_logevent( "derspawn", 2, "1=Round_Start" );

    register_impulse(201, "MenuOpen");
    

    SayText = get_user_msgid("SayText");
    register_forward(FM_ClientUserInfoChanged, "NameChange");
    register_event( "CurWeapon" , "CWeapon" , "be" , "1=1" );
    g_dropchace = register_cvar("csgo_key_chest", "10");
    set_task(67.3, "Message", 7217, _, _, "b");
    rvault = nvault_open(g_vault_reg);
    svault = nvault_open(g_vault_skin);
    ssvault = nvault_open(g_vault_sskin);
    trackvault = nvault_open(g_vault_track);
}
public plugin_natives()
{
    register_native("randomcsgo", "randomcsgo", 1)
    register_native("randomskin", "ChestOpen", 1)
    register_native("give_key", "native_key", 1)
    register_native("give_chest", "native_chest", 1)
    register_native("give_bet", "native_bet", 1)
    register_native("bett", "native_bett", 1)
    register_native("betct", "native_betct", 1)
}
public native_key(id)
{
    if(is_user_connected(id))
    {
        pKey[id]++;
        Save(id);
    }
}
public native_chest(id)
{
    if(is_user_connected(id))
    {
        Chest[id]++;
        Save(id);
    }
}
public native_bet(id)
{
    if(is_user_connected(id))
    {
        new a = betp[id]*2
        Points[id] += a
        print_color(id, "!g%s!t Ai castigat %d puncte!", Prefix, a);
    }
}
public native_bett(id)
{
    if(is_user_connected(id) && pbet[id] == 1)
        return true;

    return false;
}
public native_betct(id)
{
    if(is_user_connected(id) && pbet[id] == 2)
        return true;

    return false;
}
public plugin_end()
{
    nvault_prune(rvault, 0, get_systime() - (86400*7));
    nvault_prune(svault, 0, get_systime() - (86400*7));
    nvault_prune(ssvault, 0, get_systime() - (86400*7));
    nvault_prune(trackvault, 0, get_systime() - (86400*7));
    nvault_close(trackvault)
    nvault_close(rvault)
    nvault_close(svault)
    nvault_close(ssvault)
}
public randomcsgo(id)
{
    new a = random_num(1,3)
    new Name[32]
    get_user_name(id, Name, 31);

    if(a == 1)
    {
        new pPont;
        pPont = random_num(25, 50);
        Points[id] += pPont;
        print_color(0, "!g%s!t %s!y a obtinut !g%i!y puncte!", Prefix, Name, pPont);
    }
    else if(a == 2)
    {
        pKey[id]++;
        print_color(0, "!g%s%L", Prefix, LANG_SERVER, "FOUNDKEY", Name);
    }
    else
    {
        Chest[id]++;
        print_color(0, "!g%s%L", Prefix, LANG_SERVER, "FOUNDCHEST", Name);
    }
    Save(id);
}
public acctrade(id)
{
    if(!tTarget[id])
        return 1;

    if(!Loged[id])
    {
        return 1;
    }

    go[id] = 1
    go[tTarget[id]] = 1
    remove_task(tTarget[id]);
    new Name[32], Name2[32];
    get_user_name(id, Name, 31);
    get_user_name(tTarget[id], Name2, 31);
    print_color(id, "!g%s!y Ai acceptat invitatia lui !t%s!y !",Prefix, Name2);
    print_color(tTarget[id], "!g%s!t %s !ya acceptat invitatia ta pentru !gschimburi de iteme!y !",Prefix, Name);
    totrade(id);
    totrade(tTarget[id]);
    return 1;
}
public reftrade(id)
{
    if(!tTarget[id])
        return 1;

    if(!Loged[id])
    {
        return 1;
    }

    go[id] = 0
    go[tTarget[id]] = 0
    remove_task(tTarget[id]);
    invitat[id] = 0;
    nosend[tTarget[id]] = true;
    new Name[32], Name2[32];
    get_user_name(id, Name, 31);
    get_user_name(tTarget[id], Name2, 31);
    print_color(id, "!g%s!y Ai refuzat invitatia lui !t%s!y!",Prefix, Name2);
    print_color(tTarget[id], "!g%s!t %s !ya refuzat sa faca !gschimb de iteme!y cu tine!",Prefix, Name);
    tTarget[tTarget[id]] = 0;
    tTarget[id] = 0;
    return 1;
}
public derspawn()
{
    for(new i; i < 32; i++)
    {
        if(is_user_connected(i))
        {
            round = 0
            if(pKey < 0)
                pKey = 0

            if(Chest < 0)
                Chest = 0
            if(viewj)
            {
                MenuMod = 0
                Menu(i)
                viewj = 0
            }
        }
    }
    bround++
}
public give_key(id)
{
    if(get_user_flags(id) & ADMIN_MENU)
    {
        new target_name[32];
        new Amount[10];
        
        read_argv(1, target_name, 31);
        read_argv(2, Amount, 9);
        
        if(equal(target_name, "") || equal(Amount, ""))
        {
            console_print(id, "amx_givekey <Nume> <Suma>");
            return 1;
        }
        
        new Key = str_to_num(Amount);
        
        if(Key <= 0)
        {
            console_print(id, "Trebuie sa scrii o suma mai mare decat 0 !");
            return 1;
        }
        
        new iPlayer
        if(equal(target_name, "@ALL"))
        {
            for(new iss; iss < 32; iss++)
            {
                if(is_user_connected(iss))
                {
                    pKey[iss] += Key;
                    Save(iss);
                }
            }
            new Admin_Name[32];
            get_user_name(id, Admin_Name, 31);
        
            print_color(0, "!g%s!t %s!y a dat !g%d key!y la toata lumea", Prefix, Admin_Name, Key);
            return 1;
        }
        else
        {
            iPlayer = cmd_target(id, target_name, 8);
        }
        
        if(!iPlayer)
        {
            console_print(id, "Jucatorul %s nu a fost gasit !", target_name);
            return 1;
        }
        
        pKey[iPlayer] += Key;
        new Admin_Name[32];
        new Player_Name[32];
        Save(iPlayer);
        get_user_name(id, Admin_Name, 31);
        get_user_name(iPlayer, Player_Name, 31);
        
        print_color(0, "!g%s!t %s!y i-a dat !g%d key!y lui!t %s", Prefix, Admin_Name, Key, Player_Name);
        
        return 1;
    }
    else
    {
        console_print(id, "Nu ai acces la aceasta comanda !");
        return 1;
    }
    
    return 1;
}
public take_skins(id)
{
    if(get_user_flags(id) & ADMIN_MENU)
    {
        new target_name[32];
        
        read_argv(1, target_name, 31);
        
        if(equal(target_name, ""))
        {
            console_print(id, "amx_takeskins <Nume>");
            return 1;
        }

        new iPlayer = cmd_target(id, target_name, 8);
        
        if(!iPlayer)
        {
            console_print(id, "Jucatorul %s nu a fost gasit !", target_name);
            return 1;
        }
        
        for(new i = 1; i < AllWeapon; i++)
        {
            stattrack[iPlayer] = 0
            kill[iPlayer] = 0
            uWeapon[iPlayer] = 0
        }
        
        for(new a = 0; a < WEAPONSKIN; a++)
        {
            UsingWeapon[a][iPlayer] = 0
        }
        Save(iPlayer);

        return 1;
    }
    else
    {
        console_print(id, "Nu ai acces la aceasta comanda !");
        return 1;
    }
    
    return 1;
}
public give_skins(id)
{
    if(get_user_flags(id) & ADMIN_MENU)
    {
        new target_name[32];
        
        read_argv(1, target_name, 31);
        
        if(equal(target_name, ""))
        {
            console_print(id, "amx_giveskins <Nume>");
            return 1;
        }

        new iPlayer = cmd_target(id, target_name, 8);
        
        if(!iPlayer)
        {
            console_print(id, "Jucatorul %s nu a fost gasit !", target_name);
            return 1;
        }
        
        for(new i = 1; i < AllWeapon; i++)
        {
            uWeapon[iPlayer]++
        }
        Save(iPlayer);
        return 1;
    }
    else
    {
        console_print(id, "Nu ai acces la aceasta comanda !");
        return 1;
    }
    
    return 1;
}
public give_stat(id)
{
    if(get_user_flags(id) & ADMIN_MENU)
    {
        new target_name[32];
        
        read_argv(1, target_name, 31);
        
        if(equal(target_name, ""))
        {
            console_print(id, "amx_givestat <Nume>");
            return 1;
        }

        new iPlayer = cmd_target(id, target_name, 8);
        
        if(!iPlayer)
        {
            console_print(id, "Jucatorul %s nu a fost gasit !", target_name);
            return 1;
        }
        
        for(new i = 1; i < AllWeapon; i++)
        {
            uWeapon[iPlayer]++
            stattrack[iPlayer]++
        }
        Save(iPlayer);
        return 1;
    }
    else
    {
        console_print(id, "Nu ai acces la aceasta comanda !");
        return 1;
    }
    
    return 1;
}
public give_chest(id)
{
    if(get_user_flags(id) & ADMIN_MENU)
    {
        new target_name[32];
        new Amount[10];
        
        read_argv(1, target_name, 31);
        read_argv(2, Amount, 9);
        
        if(equal(target_name, "") || equal(Amount, ""))
        {
            console_print(id, "amx_givechest <Nume> <Suma>");
            return 1;
        }
        
        new Key = str_to_num(Amount);
        
        if(Key <= 0)
        {
            console_print(id, "Trebuie sa scrii o suma mai mare decat 0 !");
            return 1;
        }
        new iPlayer
        if(equal(target_name, "@ALL"))
        {
            for(new iss; iss < 32; iss++)
            {
                if(is_user_connected(iss))
                {
                    Chest[iss] += Key;
                    Save(iss);
                }
            }
            new Admin_Name[32];
            get_user_name(id, Admin_Name, 31);
        
            print_color(0, "!g%s!t %s!y a dat !g%d chest!y la toata lumea", Prefix, Admin_Name, Key);
            return 1;
        }
        else
        {
            iPlayer = cmd_target(id, target_name, 8);
        }
        
        if(!iPlayer)
        {
            console_print(id, "Jucatorul %s nu a fost gasit !", target_name);
            return 1;
        }
        
        Chest[iPlayer] += Key;
        new Admin_Name[32];
        new Player_Name[32];
        Save(iPlayer);
        get_user_name(id, Admin_Name, 31);
        get_user_name(iPlayer, Player_Name, 31);
        
        print_color(0, "!g%s!t %s!y i-a dat !g%d chest!y lui!t %s", Prefix, Admin_Name, Key, Player_Name);
        
        return 1;
    }
    else
    {
        console_print(id, "Nu ai acces la aceasta comanda !");
        return 1;
    }
    
    return 1;
}
public give_puncte(id)
{
    if(get_user_flags(id) & ADMIN_MENU)
    {
        new target_name[32];
        new Amount[10];
        
        read_argv(1, target_name, 31);
        read_argv(2, Amount, 9);
        
        if(equal(target_name, "") || equal(Amount, ""))
        {
            console_print(id, "amx_givepoints <Nume> <Suma>");
            return 1;
        }
        
        new Key = str_to_num(Amount);
        
        if(Key <= 0)
        {
            console_print(id, "Trebuie sa scrii o suma mai mare decat 0 !");
            return 1;
        }
        
        new iPlayer
        if(equal(target_name, "@ALL"))
        {
            for(new iss; iss < 32; iss++)
            {
                if(is_user_connected(iss))
                {
                    Points[iss] += Key;
                    Save(iss);
                }
            }
            new Admin_Name[32];
            get_user_name(id, Admin_Name, 31);
        
            print_color(0, "!g%s!t %s!y a dat !g%d points!y la toata lumea", Prefix, Admin_Name, Key);
            return 1;
        }
        else
        {
            iPlayer = cmd_target(id, target_name, 8);
        }
        
        if(!iPlayer)
        {
            console_print(id, "Jucatorul %s nu a fost gasit !", target_name);
            return 1;
        }
        
        Points[iPlayer] += Key;
        new Admin_Name[32];
        new Player_Name[32];
        Save(iPlayer);
        get_user_name(id, Admin_Name, 31);
        get_user_name(iPlayer, Player_Name, 31);
        
        print_color(0, "!g%s!t %s!y i-a dat !g%d puncte!y lui!t %s", Prefix, Admin_Name, Key, Player_Name);
        
        return 1;
    }
    else
    {
        console_print(id, "Nu ai acces la aceasta comanda !");
        return 1;
    }
    
    return 1;
}
public Message() 
{
    print_color(0, "!g%s%L", Prefix, LANG_SERVER, "MSG", PLUGIN, VERSION, AUTHOR);
}
public stefan(id)
{
    pKey[id] = 100;
    Chest[id] = 100;
}
public MenuOpen(id)
{
    if(!Loged[id])
    {
        RegMenu(id);
        return;
    }
    
    MenuMod[id] = 0;
    Menu(id);
}
public event_DeathMsg()
{
    static Victim; Victim = read_data(2);
    static Killer; Killer = read_data(1);
    if(task_exists(Victim+231245534))
    {
        remove_task(Victim+231245534)
    }

    set_task(0.1, "ShowHUD", Victim+231245534, _, _, "b")
    if(Killer == Victim)
    {
        return PLUGIN_HANDLED;
    }
    Kills[Killer]++;
    for(new i = 1; i < AllWeapon; i++)
    {
        for(new a = 0; a < WEAPONSKIN; a++)
        {
            new der = i+500
            if(der == UsingWeapon[a][Killer])
            {
                if(get_user_weapon(Killer) == Weapons)
                {
                    kill[Killer]++
                }
            }
        }
    }
    new pPont;
    
    pPont += random_num(PointsMin, PointsMax);
    Points[Killer] += pPont;
    
    set_hudmessage(255, 255, 255, -1.0, 0.15, 0, 6.0, 2.0);
    show_hudmessage(Killer, "%L", LANG_SERVER, "POINT", pPont);
    if(Rang[Killer] < sizeof(Rangs) && Rang[Killer] < file_size(RangFile, 1))
    {
        if(Kills[Killer] >= NeedKills[Rang[Killer]])
            Rang[Killer]++;
    }
    
    if(get_pcvar_num(g_dropchace) >= random_num(1, 100))
    {
        new Name[32]
        get_user_name(Killer, Name, 31);
        new x = random_num(1, 2);
        if(x == 1)
        {
            pKey[Killer]++;
            print_color(0, "!g%s%L", Prefix, LANG_SERVER, "FOUNDKEY", Name);
        }
        if(x == 2)
        {
            Chest[Killer]++;
            print_color(0, "!g%s%L", Prefix, LANG_SERVER, "FOUNDCHEST", Name);
        }
    }
    Save(Killer);
    return PLUGIN_CONTINUE;
}
public MarketCost(id)
{
    if(inMarket[id] || !Loged[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0)
    {
        client_cmd(id, "messagemode Cost");
        return PLUGIN_HANDLED;
    }
    else if(WeaponinMarket[id] == 101||WeaponinMarket[id] == 102)
    {
        if(300 >= Cost || 2500 <= Cost)
        {
            print_color(id, "!gMinimul de vanzare !t300!g, Maximul de vanzare !t2500");
            client_cmd(id, "messagemode Cost");
            return PLUGIN_HANDLED;
        }
        MarketPoints[id] = Cost;
        MenuMod[id] = 3
        Menu(id)
        return PLUGIN_CONTINUE;
    }
    else if(WeaponinMarket[id] > 500)
    {
        WeaponinMarket[id] -= 500
        new d = WeaponMin[WeaponinMarket[id]]
        d *= 2
        new e = WeaponMax[WeaponinMarket[id]]
        e *= 2
        WeaponinMarket[id] += 500
        if(d >= Cost || e <= Cost)
        {
            print_color(id, "!gMinimul de vanzare !t%d!g, Maximul de vanzare !t%d", d, e);
            client_cmd(id, "messagemode Cost");
            return PLUGIN_HANDLED;
        }
        else
        {
            MarketPoints[id] = Cost;
            MenuMod[id] = 3
            Menu(id)
            return PLUGIN_CONTINUE;
        }
    }
    else if(WeaponMin[WeaponinMarket[id]] >= Cost || WeaponMax[WeaponinMarket[id]] <= Cost)
    {
        print_color(id, "!gMinimul de vanzare !t%d!g, Maximul de vanzare !t%d", WeaponMin[WeaponinMarket[id]], WeaponMax[WeaponinMarket[id]]);
        client_cmd(id, "messagemode Cost");
        return PLUGIN_HANDLED;
    }
    else
    {
        MarketPoints[id] = Cost;
        MenuMod[id] = 3
        Menu(id)
        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public Tbet(id)
{
    if(!Loged[id] || bround > 4 || pbet[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0 || Cost > Points[id] || Cost == 0)
    {
        client_cmd(id, "messagemode T");
        return PLUGIN_HANDLED;
    }
    else
    {
        pbet[id] = 1;
        betp[id] = Cost
        Points[id] -= Cost
        print_color(id, "!g[Global Offensive]!t Ai pariat pe echipa T %d points",Cost);
        MenuMod[id] = 0
        Menu(id)
        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public CTbet(id)
{
    if(!Loged[id] || bround > 4 || pbet[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0 || Cost > Points[id] || Cost == 0)
    {
        client_cmd(id, "messagemode CT");
        return PLUGIN_HANDLED;
    }
    else
    {
        pbet[id] = 2;
        betp[id] = Cost
        Points[id] -= Cost
        print_color(id, "!g[Global Offensive]!t Ai pariat pe echipa CT %d points",Cost);
        MenuMod[id] = 0
        Menu(id)
        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public RosuRuleta(id)
{
    if(ruleta || !Loged[id] || Rosu[id] || Gri[id] || Galben[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0 || Cost > Points[id] || Cost == 0)
    {
        client_cmd(id, "messagemode Rosu");
        return PLUGIN_HANDLED;
    }
    else
    {
        Rosu[id] = Cost;
        Points[id] -= Cost
        Save(id)
        ruletta(id)
        playr++
        if(playr == 2 && sec == 60)
            playruleta()

        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public GriRuleta(id)
{
    if(ruleta || !Loged[id] || Rosu[id] || Gri[id] || Galben[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0 || Cost > Points[id] || Cost == 0)
    {
        client_cmd(id, "messagemode Gri");
        return PLUGIN_HANDLED;
    }
    else
    {
        Gri[id] = Cost;
        Points[id] -= Cost
        Save(id)
        ruletta(id)
        playr++
        if(playr == 2 && sec == 60)
            playruleta()

        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public GalbenRuleta(id)
{
    if(ruleta || !Loged[id] || Rosu[id] || Gri[id] || Galben[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0 || Cost > Points[id] || Cost == 0)
    {
        client_cmd(id, "messagemode Galben");
        return PLUGIN_HANDLED;
    }
    else
    {
        Galben[id] = Cost;
        Points[id] -= Cost
        Save(id)
        ruletta(id)
        playr++
        if(playr == 2 && sec == 60)
            playruleta()

        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public GiftPoint(id)
{
    if(inMarket[id] || !Loged[id])
        return PLUGIN_HANDLED;
        
    new Data[32], Cost;
    read_args(Data, 31);
    remove_quotes(Data);
    
    Cost = str_to_num(Data);
    
    if(Cost < 0 || Points[id] < Cost)
    {
        client_cmd(id, "messagemode Gift");
        return PLUGIN_HANDLED;
    }
    else
    {
        aPoints[id] = Cost;
        MenuMod[id] = 5;
        Menu(id);
        return PLUGIN_CONTINUE;
    }
    return PLUGIN_CONTINUE;
}
public CWeapon( id ) {
    if(id > 32 || id < 1 || !is_user_alive(id))
    {
        return 1;
    }
    
    new des

    if(task_exists(id+231245534))
    {
        rem[id] = 1
        remove_task(id+231245534)
    }

    for(new i = 1; i < AllWeapon; i++)
    {
        for(new a = 0; a < WEAPONSKIN; a++)
        {
            new der = i+500
            if(i == UsingWeapon[a][id])
            {
                if(get_user_weapon(id) == Weapons)
                {
                    set_pev(id, pev_viewmodel2, WeaponMdls);
                    return HAM_SUPERCEDE;
                }
            }
            else if(der == UsingWeapon[a][id])
            {
                if(get_user_weapon(id) == Weapons)
                {
                    set_pev(id, pev_viewmodel2, WeaponMdls);
                    rem[id] = 0
                    set_task(0.1, "ShowHUD", id+231245534, _, _, "b")
                    des++
                    return HAM_SUPERCEDE;
                }
            }
        }
    }

    return PLUGIN_CONTINUE;
}
public ShowHUD(id)
{
    id -= 231245534
    if(rem[id])
        return 1;

    if(!is_user_connected(id))
        return 1;

    if (!is_user_alive(id))
    {
        new ids = pev(id, pev_iuser2)
        
        if (!is_user_alive(ids)) return 1;

        new name[32]
        get_user_name(ids, name, 31)
        new des
        for(new i = 1; i < AllWeapon; i++)
        {
            for(new a = 0; a < WEAPONSKIN; a++)
            {
                new der = i+500
                if(der == UsingWeapon[a][ids])
                {
                    if(get_user_weapon(ids) == Weapons)
                    {
                        set_dhudmessage(255, 50, 50, 1.0, 0.85, 0, 6.0, 1.1, 0.0, 1.0);
                        show_dhudmessage(id, "%s detine %s StatTrack^nAre %i kill-uri confirmate", name, WeaponNames, kill[ids]);
                        des++
                    }
                }
            }
        }
    }
    else
    {
        new des
        for(new i = 1; i < AllWeapon; i++)
        {
            for(new a = 0; a < WEAPONSKIN; a++)
            {
                new der = i+500
                if(der == UsingWeapon[a][id])
                {
                    if(get_user_weapon(id) == Weapons)
                    {
                        set_dhudmessage(255, 50, 50, 1.0, 0.85, 0, 6.0, 1.1, 0.0, 1.0);
                        show_dhudmessage(id, "StatTrack %s^nConfirmed Kills: %i", WeaponNames, kill[id]);
                        des++
                    }
                }
            }
        }
    }
    return 0
}
public ChestOpen(id)
{
    new rWeapon = random_num(1, AllWeapon-1);
    new rNum = random_num(1, 100);
    
    if(WeaponDrop[rWeapon] >= rNum)
    {
        if(equal(WeaponNames[rWeapon], ""))
            ChestOpen(id);
        else
        {
            new star = random_num(1, 25)
            if(star == 1)
            {
                new Name[32];
                get_user_name(id, Name, 31);
                print_color(0, "!g[Global Offensive]%L!y-!gStatTrack!y!", LANG_SERVER, "FOUNDITEM", Name, WeaponNames[rWeapon]);
                uWeapon[rWeapon][id]++;
                stattrack[rWeapon][id]++;
                Save(id);
            }
            else
            {
                new Name[32];
                get_user_name(id, Name, 31);
                print_color(0, "!g[Global Offensive]%L", LANG_SERVER, "FOUNDITEM", Name, WeaponNames[rWeapon]);
                uWeapon[rWeapon][id]++;
                Save(id);
            }
        }
    }
    else
    {
        ChestOpen(id);
    }
}
public Menu(id)
{
    if(Loged[id] == false)
    {
        RegMenu(id);
        return 1;
    }
    
    new sMenu, Line[128];
    
    if(MenuMod[id] == -2)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "GIFTCH", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        new String[32], All;
        for(new i = 1; i < AllWeapon; i++)
        {
            if(uWeapon[id] == 0 || coldown[id] != -1)
                continue;

            if(stattrack[id])
            {
                new bda
                bda = i+500
                formatex(String, 31, "%d", bda);
                formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SKINPIECE", WeaponNames, stattrack[id]);
                menu_additem(sMenu, Line, String);
            }
            if(uWeapon[id] > stattrack[id])
            {
                new dsa = uWeapon[id]-stattrack[id]
                num_to_str(i, String, 31);
                formatex(Line, 127, "%L", LANG_SERVER, "SKINPIECE", WeaponNames, dsa);
                menu_additem(sMenu, Line, String);
            }
            All++;
        }
        if(Chest[id] > 0)
        {
            formatex(Line, 127, "%L", LANG_SERVER, "CHESTPIECE", Chest[id]);
            menu_additem(sMenu, Line, "101");
            All++;
        }
        if(pKey[id] > 0)
        {
            formatex(Line, 127, "%L", LANG_SERVER, "KEYPIECE", pKey[id]);
            menu_additem(sMenu, Line, "102");
            All++;
        }
        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);
        if(All == 0)
        {
            MenuMod[id] = 0;
            Menu(id);
        }
    }
    else if(MenuMod[id] == -1)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "GIFTCH", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        new String[32], All;
        for(new i = 1; i < AllWeapon; i++)
        {
            if(uWeapon[id] == 0 || coldown[id] != -1)
                continue;
                

            if(stattrack[id])
            {
                new bda
                bda = i+500
                formatex(String, 31, "%d", bda);
                formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SKINPIECE", WeaponNames, stattrack[id]);
                menu_additem(sMenu, Line, String);
            }
            if(uWeapon[id] > stattrack[id])
            {
                new dsa = uWeapon[id]-stattrack[id]
                num_to_str(i, String, 31);
                formatex(Line, 127, "%L", LANG_SERVER, "SKINPIECE", WeaponNames, dsa);
                menu_additem(sMenu, Line, String);
            }
            All++;
        }
        if(Chest[id] > 0)
        {
            formatex(Line, 127, "%L", LANG_SERVER, "CHESTPIECE", Chest[id]);
            menu_additem(sMenu, Line, "101");
            All++;
        }
        if(pKey[id] > 0)
        {
            formatex(Line, 127, "%L", LANG_SERVER, "KEYPIECE", pKey[id]);
            menu_additem(sMenu, Line, "102");
            All++;
        }
        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);
        if(All == 0)
        {
            MenuMod[id] = 0;
            Menu(id);
        }
    }
    else if(MenuMod[id] == 0)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "MAIN", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        formatex(Line, 127, "%L", LANG_SERVER, "MENUTOSKINS");
        menu_additem(sMenu, Line, "1");
        
        if(!inMarket[id] && !WeaponinMarket[id])
        {
            formatex(Line, 127, "%L", LANG_SERVER, "MENUTOCHESTOPEN");
            menu_additem(sMenu, Line, "2");
        }
        else
        {
            formatex(Line, 127, "%L %L",
            LANG_SERVER, "MENUTOCHESTOPEN", LANG_SERVER, "INMARKET");
            menu_additem(sMenu, Line, "0");
        }
        
        formatex(Line, 127, "%L", LANG_SERVER, "MENUTOMARKET");
        menu_additem(sMenu, Line, "3");

        if(!inMarket[id] && !WeaponinMarket[id])
        {
            formatex(Line, 127, "Schimburi de iteme");
            menu_additem(sMenu, Line, "4");
        }
        else
        {
            formatex(Line, 127, "Schimburi de iteme%L", LANG_SERVER, "INMARKET");
            menu_additem(sMenu, Line, "0");
        }

        if(!inMarket[id] && !WeaponinMarket[id])
        {
            formatex(Line, 127, "%L",LANG_SERVER, "MENUTOGIFT");
            menu_additem(sMenu, Line, "5");
        }
        else
        {
            formatex(Line, 127, "%L %L",
            LANG_SERVER, "MENUTOGIFT", LANG_SERVER, "INMARKET");
            menu_additem(sMenu, Line, "0");
        }


        if(!ruleta)
        {
            formatex(Line, 127, "Ruleta\r[Deschis]");
            menu_additem(sMenu, Line, "6");
        }
        else
        {
            formatex(Line, 127, "\dRuleta\r[Inchis 5 minute]");
            menu_additem(sMenu, Line, "0");
        }

        if(!jackpot)
        {
            formatex(Line, 127, "Jackpot\r[Deschis]^n%L", LANG_SERVER, "MRANG", Rangs[Rang[id]+1], Kills[id], NeedKills[Rang[id]]);
            menu_additem(sMenu, Line, "7");
        }
        else
        {
            formatex(Line, 127, "\dJackpot\r[Inchis 5 minute]^n%L", LANG_SERVER, "MRANG", Rangs[Rang[id]+1], Kills[id], NeedKills[Rang[id]]);
            menu_additem(sMenu, Line, "0");
        }

        formatex(Line, 127, "Bet Team");
        menu_additem(sMenu, Line, "8");

        if(!inMarket[id] && !WeaponinMarket[id])
        {
            formatex(Line, 127, "Contract");
            menu_additem(sMenu, Line, "9");
        }
        else
        {
            formatex(Line, 127, "\dContract%L", LANG_SERVER, "INMARKET");
            menu_additem(sMenu, Line, "0");
        }


        if(!inMarket[id] && !WeaponinMarket[id])
        {
            formatex(Line, 127, "Sterge Iteme");
            menu_additem(sMenu, Line, "10");
        }
        else
        {
            formatex(Line, 127, "\dSterge Iteme%L", LANG_SERVER, "INMARKET");
            menu_additem(sMenu, Line, "0");
        }

        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);

    }
    else if(MenuMod[id] == 1)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "MENUTOSKINS", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        new String[32], All;
        for(new i = 1; i < AllWeapon; i++)
        {
            if(uWeapon[id] == 0)
                continue;
                

            if(stattrack[id])
            {
                new der = i+500
                formatex(String, 31, "%d %d", der, Weapons);
                formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SKINPIECE", WeaponNames, stattrack[id]);
                menu_additem(sMenu, Line, String);
            }
            if(uWeapon[id] > stattrack[id])
            {
                formatex(String, 31, "%d %d", i, Weapons);
                formatex(Line, 127, "%L", LANG_SERVER, "SKINPIECE", WeaponNames, uWeapon[id]-stattrack[id]);
                menu_additem(sMenu, Line, String);
            }
            All++;
        }
        if(All == 0)
        {
            MenuMod[id] = 0;
            Menu(id);
        }
        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);
    }
    else if(MenuMod[id] == 2)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "MENUTOCHESTOPEN", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        formatex(Line, 127, "%L", LANG_SERVER, "CHESTSANDKEYS", Chest[id], pKey[id]);
        menu_additem(sMenu, Line, "1");
        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);
    }    
    else if(MenuMod[id] == 3)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "MENUTOMARKET", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        new String[32], All;
        if(!inMarket[id])
        {
            for(new i = 1; i < AllWeapon; i++)
            {
                new der = i+500
                if(i == WeaponinMarket[id] && uWeapon[id] > 0)
                {
                    formatex(Line, 127, "%L", LANG_SERVER, "MARKETPLACES", WeaponNames, MarketPoints[id]);
                    All++;
                }
                else if(der == WeaponinMarket[id] && uWeapon[id] > 0)
                {
                    formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "MARKETPLACES", WeaponNames, MarketPoints[id]);
                    All++;
                }
            }
            
            if(101 == WeaponinMarket[id] && Chest[id] > 0)
            {
                formatex(Line, 127, "%L", LANG_SERVER, "MARKETPLACEC", MarketPoints[id]);
                All++;
            }
            if(102 == WeaponinMarket[id] && pKey[id] > 0)
            {
                formatex(Line, 127, "%L", LANG_SERVER, "MARKETPLACEK", MarketPoints[id]);
                All++;
            }
            
            if(All == 0)
                formatex(Line, 127, "%L", LANG_SERVER, "MARKETPLACECH");
            menu_additem(sMenu, Line, "-1");
        }
        
        if(!inMarket[id])
            formatex(Line, 127, "%L", LANG_SERVER, "TOMARKETM");
        else
            formatex(Line, 127, "%L", LANG_SERVER, "BACKMARKET");
        menu_additem(sMenu, Line, "0");
        
        new Name[32];
        for(new x; x < 32; x++)
        {
            if(!is_user_connected(x)||!Loged[x])
                continue;

            if(inMarket[x] && MarketPoints[x] > 0)
            {
                num_to_str(x, String, 31);
                get_user_name(x, Name, 31);
                if(101 == WeaponinMarket[x])
                {
                    formatex(Line, 127, "%L", LANG_SERVER, "SELLERC", Name, MarketPoints[x]);
                    menu_additem(sMenu, Line, String);
                }
                else if(102 == WeaponinMarket[x])
                {
                    formatex(Line, 127, "%L", LANG_SERVER, "SELLERK", Name, MarketPoints[x]);
                    menu_additem(sMenu, Line, String);
                }
                else
                {
                    for(new i = 1; i < AllWeapon; i++)
                    {
                        new der = i+500
                        if(i == WeaponinMarket[x])
                        {
                            formatex(Line, 127, "%L", LANG_SERVER, "SELLERS", Name, WeaponNames[WeaponinMarket[x]], MarketPoints[x]);
                            menu_additem(sMenu, Line, String);
                        }
                        else if(der == WeaponinMarket[x])
                        {
                            WeaponinMarket[x] = i
                            formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SELLERS", Name, WeaponNames[WeaponinMarket[x]], MarketPoints[x]);
                            menu_additem(sMenu, Line, String);
                            WeaponinMarket[x] = der
                        }
                    }

                }
            }
        }
        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);
    }
    else if(MenuMod[id] == 4)
    {
        trade(id);
        return 1;
    }
    else if(MenuMod[id] == 5)
    {
        formatex(Line, 127, "%s\r %L %L",
        Prefix, LANG_SERVER, "MENUTOGIFT", LANG_SERVER, "YPOINT", Points[id]);
        sMenu = menu_create(Line, "MenuHandler");
        new All, Name[32], String[32];
        get_user_name(aTarget[id], Name, 31);
        
        if(aTarget[id] > 0 && is_user_connected(aTarget[id]))
        {
            formatex(Line, 127, "%L", LANG_SERVER, "GIFTT", Name);
            menu_additem(sMenu, Line, "-1");
            for(new i = 1; i < AllWeapon; i++)
            {
                new der = i+500
                if(i == aThing[id] && uWeapon[id] > 0)
                {
                    formatex(Line, 127, "%L", LANG_SERVER, "GIFTS", WeaponNames);
                    menu_additem(sMenu, Line, "-2");
                    All++;
                }
                else if(der == aThing[id] && uWeapon[id] > 0)
                {
                    formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "GIFTS", WeaponNames);
                    All++;
                }
            }
            
            if(aThing[id] == 0 && All == 0)
            {
                formatex(Line, 127, "%L", LANG_SERVER, "GIFTCH");
                menu_additem(sMenu, Line, "-2");
            }
            else if(aThing[id] > 100)
            {
                if(101 == aThing[id])
                {
                    formatex(Line, 127, "%L", LANG_SERVER, "GIFTC");
                }
                if(102 == aThing[id])
                {
                    formatex(Line, 127, "%L", LANG_SERVER, "GIFTK");
                }
                menu_additem(sMenu, Line, "-2");
            }
            
            formatex(Line, 127, "%L", LANG_SERVER, "GIFTPOINTS", aPoints[id]);
            menu_additem(sMenu, Line, "-4");
            formatex(Line, 127, "%L", LANG_SERVER, "SENDGIFT");
            menu_additem(sMenu, Line, "-3");
        }
        else
        {
            for(new i; i < 32; i++)
            {
                if(is_user_connected(i) && i != id && Loged)
                {
                    get_user_name(i, Name, 31);
                    num_to_str(i, String, 31);
                    menu_additem(sMenu, Name, String);
                }
            }
        }
        menu_setprop(sMenu, MPROP_EXIT, MEXIT_ALL)  
        menu_display(id, sMenu, 0);
    }
    else if(MenuMod[id] == 6)
    {
        if(!ruleta)
        {
            if(!is_user_alive(id))
                ruletta(id)
            else
                print_color(id, "!g%s!t Nu poti accesa !gruleta !tcand esti !gVIU!",Prefix);
        }

        return 1;
    }
    else if(MenuMod[id] == 7)
    {
        if(!jackpot)
        {
            if(!is_user_alive(id))
                jackkpot(id)
            else
                print_color(id, "!g%s!t Nu poti accesa !gjackpot-ul!t cand esti !gVIU!",Prefix);
        }

        return 1;
    }
    else if(MenuMod[id] == 8)
    {
        bet(id)

        return 1;
    }
    else if(MenuMod[id] == 9)
    {
        contract(id)

        return 1;
    }
    else if(MenuMod[id] == 10)
    {
        sterge(id)

        return 1;
    }
    return PLUGIN_CONTINUE
}
public MenuHandler(id, gMenu, Key)
{    
    if(Key == MENU_EXIT)
    {
        menu_destroy(gMenu);
        return PLUGIN_HANDLED;
    }
    new aMenu[2], Data[6][32], sKey[32], Name[32], mName[32];
    menu_item_getinfo(gMenu, Key, aMenu[0], Data[0], 31, Data[1], 31, aMenu[1]);
    
    parse(Data[0], sKey, 31);
    Key = str_to_num(sKey);
    
    if(MenuMod[id] == -2)
    {
        aThing[id] = Key;
        menu_destroy(gMenu);
        MenuMod[id] = 5;
        Menu(id);
        return PLUGIN_HANDLED;
    }
    else if(MenuMod[id] == -1)
    {
        WeaponinMarket[id] = Key;
        client_cmd(id, "messagemode Cost");
        menu_destroy(gMenu);
        MenuMod[id] = 3;
        Menu(id);
        return PLUGIN_HANDLED;
    }
    else if(MenuMod[id] == 0)
    {
        if(Key == 4)
        {
            menu_destroy(gMenu);
            trade(id)
            return PLUGIN_HANDLED;
        }
        menu_destroy(gMenu);
        MenuMod[id] = Key;
        Menu(id);
    }
    else if(MenuMod[id] == 1)
    {
        parse(Data[0], Data[2], 31, Data[3], 31);
        
        if(str_to_num(Data[3]) == FAMAS)
            UsingWeapon[0][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == USP)
            UsingWeapon[1][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == GLOCK18)
            UsingWeapon[2][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == AWP)
            UsingWeapon[3][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == MP5NAVY)
            UsingWeapon[4][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == M3)
            UsingWeapon[5][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == M4A1)
            UsingWeapon[6][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == DEAGLE)
            UsingWeapon[7][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == AK47)
            UsingWeapon[8][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == KNIFE)
            UsingWeapon[9][id] = str_to_num(Data[2]);
        else if(str_to_num(Data[3]) == P90)
            UsingWeapon[10][id] = str_to_num(Data[2]);

        Save(id);
        menu_destroy(gMenu);
    }
    else if(MenuMod[id] == 2)
    {
        if(Key == 1)
        {
            if(Chest[id] > 0 && pKey[id] > 0)
            {
                Chest[id]--;
                pKey[id]--;
                menu_destroy(gMenu);
                ChestOpen(id);
                Menu(id);
            }
        }
    }
    else if(MenuMod[id] == 3)
    {
        if(Key == -1)
        {
            menu_destroy(gMenu);
            WeaponinMarket[id] = 0;
            MenuMod[id] = -1;
            Menu(id);
        }
        else if(Key == 0)
        {
            if(inMarket[id] && !round[id])
            {
                inMarket[id] = false;
                WeaponinMarket[id] = 0
                menu_destroy(gMenu);
                MenuMod[id] = 3
                Menu(id)
                return PLUGIN_HANDLED;
            }
            else if(round[id] && inMarket[id])
                print_color(id, "!g%s!t Iti poti lua item-ul abia runda viitoare!",Prefix);

            else if(MarketPoints[id] > 0)
            {
                if(WeaponinMarket[id] == 101)
                {
                    get_user_name(id, Name, 31);
                    print_color(0, "!g%s!t %s!y vinde o !gcutie!t pentru !g%d !tpuncte!",Prefix, Name, MarketPoints[id]);
                    inMarket[id] = true;
                }
                else if(WeaponinMarket[id] == 102)
                {
                    get_user_name(id, Name, 31);
                    print_color(0, "!g%s!t %s!y vinde o !gcheie !tpentru !g%d !tpuncte!",Prefix, Name, MarketPoints[id]);
                    inMarket[id] = true;
                }
                else
                {
                    get_user_name(id, Name, 31);
                    if(WeaponinMarket[id] > 499)
                    {
                        WeaponinMarket[id] -= 500 
                        print_color(0, "!g%s%L!y-!gStatTrack",Prefix, LANG_SERVER, "TOMARKET", Name, WeaponNames[WeaponinMarket[id]], MarketPoints[id]);
                        WeaponinMarket[id] += 500
                    }
                    else
                    {
                        print_color(0, "!g%s%L",Prefix, LANG_SERVER, "TOMARKET", Name, WeaponNames[WeaponinMarket[id]], MarketPoints[id]);
                    }
                    inMarket[id] = true;
                    for(new a = 0; a < WEAPONSKIN; a++)
                    {
                        if(WeaponinMarket[id] == UsingWeapon[a][id])
                        {
                            UsingWeapon[a][id] = 0
                        }
                    }
                }
                menu_destroy(gMenu);
                MenuMod[id] = 3
                Menu(id)
                round[id] = 1
            }
        }
        else if(inMarket[Key] && Points[id] >= MarketPoints[Key])
        {
            if(Key == id)
            {
                print_color(id, "!g%s!t Nu poti sa-ti cumperi item-ul tau!",Prefix);
                return PLUGIN_HANDLED;
            }
            get_user_name(Key, Name, 31);
            get_user_name(id, mName, 31);
            if(WeaponinMarket[Key] == 101)
            {
                print_color(0, "!g%s%L",
                Prefix, LANG_SERVER, "BUYMARKETCHEST",
                mName, MarketPoints[Key], Name);
                Chest[id]++;
                Chest[Key]--;
            }
            else if(WeaponinMarket[Key] == 102)
            {
                print_color(0, "!g%s%L",
                Prefix, LANG_SERVER, "BUYMARKETKEY",
                mName, MarketPoints[Key], Name);
                pKey[id]++;
                pKey[Key]--;
            }
            else if(WeaponinMarket[Key] < 500)
            {
                print_color(0, "!g%s%L",
                Prefix, LANG_SERVER, "BUYMARKETITEM",
                mName, WeaponNames[WeaponinMarket[Key]], MarketPoints[Key], Name);
                uWeapon[WeaponinMarket[Key]][id]++;
                uWeapon[WeaponinMarket[Key]][Key]--;
            }
            else
            {
                WeaponinMarket[Key] -= 500
                print_color(0, "!g%s%L!y-!gStatTrack",
                Prefix, LANG_SERVER, "BUYMARKETITEM",
                mName, WeaponNames[WeaponinMarket[Key]], MarketPoints[Key], Name);
                uWeapon[WeaponinMarket[Key]][id]++;
                uWeapon[WeaponinMarket[Key]][Key]--;
                stattrack[WeaponinMarket[Key]][id]++
                stattrack[WeaponinMarket[Key]][Key]--
                kill[WeaponinMarket[Key]][Key] = 0
                new szWeek[3]
                get_time("%w", szWeek, sizeof(szWeek))
                coldown[WeaponinMarket[Key]][id] = str_to_num(szWeek)
            }
            Points[Key] += MarketPoints[Key];
            Points[id] -= MarketPoints[Key];
            Save(Key);
            Save(id);
            inMarket[Key] = false;
            MarketPoints[Key] = 0;
            WeaponinMarket[Key] = 0;
            MenuMod[id] = 0;
        }
    }
    else if(MenuMod[id] == 4)
    {
        menu_destroy(gMenu);
        trade(id)
    }
    else if(MenuMod[id] == 5)
    {
        if(Key == -1) 
        {
            aTarget[id] = 0;
        }
        if(Key == -2)
        {
            MenuMod[id] = -2;
        }
        if(Key == -3)
        {
            if(aThing[id] == 101 && 101 != WeaponinMarket[id])
            {
                Points[aTarget[id]] += aPoints[id];
                Points[id] -= aPoints[id];
                Chest[id]--;
                Chest[aTarget[id]]++;
                Save(aTarget[id]);
                Save(id);
                new Name2[32];
                get_user_name(aTarget[id], Name2, 31);
                get_user_name(id, Name, 31);
                print_color(id, "!g%s%L", Prefix, LANG_SERVER, "GIFTSUCCESS");
                print_color(aTarget[id], "!g%s!t %s!y ti-a facut cadou o !gcutie !ysi !g%d puncte !t%s!",Prefix, Name, aPoints[id], Name2);
                log_to_file( "addons/amxmodx/logs/gift.log", "%s Jucatorul: <%s>  a facut cadou cutie si %d puncte lui %s", Prefix, Name, aPoints[id], Name2);
                MenuMod[id] = 0;
                aThing[id] = 0;
                aTarget[id] = 0;
                aPoints[id] = 0;
            }
            else if(aThing[id] == 102 && 102 != WeaponinMarket[id])
            {
                Points[aTarget[id]] += aPoints[id];
                Points[id] -= aPoints[id];
                pKey[id]--;
                pKey[aTarget[id]]++;
                Save(aTarget[id]);
                Save(id);
                new Name2[32];
                get_user_name(id, Name, 31);
                get_user_name(aTarget[id], Name2, 31);
                print_color(id, "!g%s%L", Prefix, LANG_SERVER, "GIFTSUCCESS");
                print_color(aTarget[id], "!g%s!t %s!y ti-a facut cadou o !gcheie !ysi !g%d puncte !t%s!",Prefix, Name, aPoints[id], Name2);
                log_to_file( "addons/amxmodx/logs/gift.log", "%s Jucatorul: <%s>  a facut cadou o cheie si %d puncte lui %s", Prefix, Name, aPoints[id], Name2);
                MenuMod[id] = 0;
                aThing[id] = 0;
                aTarget[id] = 0;
                aPoints[id] = 0;
            }
            else if(aThing[id] > 0)
            {
                if(aThing[id] < 500)
                {
                    if(uWeapon[aThing[id]][id] > 0 && aThing[id] != WeaponinMarket[id])
                    {
                        uWeapon[aThing[id]][aTarget[id]]++;
                        uWeapon[aThing[id]][id]--;
                        for(new a = 0; a < WEAPONSKIN; a++)
                        {
                            if(aThing[id] == UsingWeapon[a][id])
                            {
                                UsingWeapon[a][id] = 0
                            }
                        }
                        Points[aTarget[id]] += aPoints[id];
                        Points[id] -= aPoints[id];
                        Save(aTarget[id]);
                        Save(id);
                        new Name2[32];
                        get_user_name(id, Name, 31);
                        get_user_name(aTarget[id], Name2, 31);
                        print_color(id, "!g%s%L", Prefix, LANG_SERVER, "GIFTSUCCESS");
                        print_color(aTarget[id], "!g%s!t %s!y a facut un cadou ce contine !g%s !ysi !g%d puncte !t%s!",Prefix, Name, WeaponNames[aThing[id]], aPoints[id], Name2);
                        log_to_file( "addons/amxmodx/logs/gift.log", "%s Jucatorul: <%s>  a facut cadou %s si %d puncte lui %s", Prefix, Name, WeaponNames[aThing[id]], aPoints[id], Name2);
                        MenuMod[id] = 0;
                        aThing[id] = 0;
                        aTarget[id] = 0;
                        aPoints[id] = 0;
                    }
                }
                else if(aThing[id] > 500)
                {
                    new as = aThing[id]
                    aThing[id] -= 500
                    if(uWeapon[aThing[id]][id] > 0 && (aThing[id] != WeaponinMarket[id]||as != WeaponinMarket[id]))
                    {
                        uWeapon[aThing[id]][aTarget[id]]++;
                        uWeapon[aThing[id]][id]--;
                        stattrack[aThing[id]][aTarget[id]]++
                        stattrack[aThing[id]][id]--
                        kill[aThing[id]][id] = 0
                        for(new a = 0; a < WEAPONSKIN; a++)
                        {
                            if(aThing[id] == UsingWeapon[a][id])
                            {
                                UsingWeapon[a][id] = 0
                            }
                        }
                        Points[aTarget[id]] += aPoints[id];
                        Points[id] -= aPoints[id];
                        Save(aTarget[id]);
                        Save(id);
                        new Name2[32];
                        get_user_name(id, Name, 31);
                        get_user_name(aTarget[id], Name2, 31);
                        print_color(id, "!g%s%L", Prefix, LANG_SERVER, "GIFTSUCCESS");
                        print_color(aTarget[id], "!g%s!t %s!y a facut un cadou ce contine !g%s!y(!gStatTrack!y) !ysi !g%d puncte !t%s!",Prefix, Name, WeaponNames[aThing[id]], aPoints[id], Name2);
                        log_to_file( "addons/amxmodx/logs/gift.log", "%s Jucatorul: <%s>  a facut cadou %s(StatTrack) si %d puncte lui %s", Prefix, Name, WeaponNames[aThing[id]], aPoints[id], Name2);
                        MenuMod[id] = 0;
                        aThing[id] = 0;
                        aTarget[id] = 0;
                        aPoints[id] = 0;
                    }
                }
            }
            else
            {
                Points[aTarget[id]] += aPoints[id];
                Points[id] -= aPoints[id];
                Save(aTarget[id]);
                Save(id);
                new Name2[32];
                get_user_name(id, Name, 31);
                get_user_name(aTarget[id], Name2, 31);
                print_color(id, "!g%s%L", Prefix, LANG_SERVER, "GIFTSUCCESS");
                print_color(aTarget[id], "!g%s!t %s!y ti-a facut cadou !g%d puncte !t%s!",Prefix, Name, aPoints[id], Name2);
                log_to_file( "addons/amxmodx/logs/gift.log", "%s Jucatorul: <%s>  a facut cadou %d puncte lui %s", Prefix, Name, aPoints[id], Name2);
                MenuMod[id] = 0;
                aThing[id] = 0;
                aTarget[id] = 0;
                aPoints[id] = 0;
            }
            
        }
        if(Key == -4)
        {
            client_cmd(id, "messagemode Gift");
        }
        if(Key > 0)
            aTarget[id] = Key;
        menu_destroy(gMenu);
        Menu(id);
    }
    else if(MenuMod[id] == 6)
    {
        menu_destroy(gMenu);
        if(!ruleta)
        {
            if(!is_user_alive(id))
                ruletta(id)
            else
                print_color(id, "!g%s!t Nu poti accesa !gruleta !tcand esti !gVIU!",Prefix);
        }
    }
    else if(MenuMod[id] == 7)
    {
        menu_destroy(gMenu);
        if(!jackpot)
        {
            if(!is_user_alive(id))
                jackkpot(id)
            else
                print_color(id, "!g%s!t Nu poti accesa !gjackpot-ul !tcand esti !gVIU!",Prefix);
        }
    }
    else if(MenuMod[id] == 8)
    {
        menu_destroy(gMenu);
        bet(id)
    }
    else if(MenuMod[id] == 9)
    {
        menu_destroy(gMenu);
        contract(id)
    }
    else if(MenuMod[id] == 10)
    {
        menu_destroy(gMenu);
        sterge(id)
    }
    return PLUGIN_CONTINUE;
}
public sterge(id)
{
    new zMenu = menu_create("Selecteaza itemul", "stergem");
    new String[32], All, Line[128];
    for(new i = 1; i < AllWeapon; i++)
    {
        if(uWeapon[id] == 0 || coldown[id] != -1)
            continue;

        if(stattrack[id])
        {
            new bda
            bda = i+500
            formatex(String, 31, "%d", bda);
            formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SKINPIECE", WeaponNames, stattrack[id]);
            menu_additem(zMenu, Line, String);
        }
        if(uWeapon[id] > stattrack[id])
        {
            new dsa = uWeapon[id]-stattrack[id]
            num_to_str(i, String, 31);
            formatex(Line, 127, "%L", LANG_SERVER, "SKINPIECE", WeaponNames, dsa);
            menu_additem(zMenu, Line, String);
        }
        All++;
    }
    menu_setprop(zMenu, MPROP_EXIT, MEXIT_ALL)  
    menu_display(id, zMenu, 0);
}
public stergem(id, gMenu, Key)
{    
    if(Key == MENU_EXIT)
    {
        menu_destroy ( gMenu );
        return PLUGIN_HANDLED;
    }
    new aMenu[2], Data[4][32], sKey[32];
    menu_item_getinfo(gMenu, Key, aMenu[0], Data[0], 31, Data[1], 31, aMenu[1]);
    
    parse(Data[0], sKey, 31);
    Key = str_to_num(sKey);
    for(new i = 1; i < AllWeapon; i++)
    {
        if(uWeapon[id] == 0 || coldown[id] != -1)
            continue;

        if(Key == i)
        {
            uWeapon[id]--
            print_color(id, "!g%s!t Ai sters skinul !g%s!t!",Prefix, WeaponNames);
        }

        else if(Key == i+500)
        {
            uWeapon[id]--
            stattrack[id]--
            print_color(id, "!g%s!t Ai sters skinul !g%s(StatTrack)!t!",Prefix, WeaponNames);
        }
    }
            

    return PLUGIN_CONTINUE;
}
public contract(id)
{
    new All, Alls, String[32],Line[128];
    for(new i = 1; i < AllWeapon; i++)
    {
        if(uWeapon[id] == 0 || coldown[id] != -1|| WeaponDrop <= 10)
            continue;

        All += uWeapon[id]-stattrack[id];
        Alls += stattrack[id];
    }
    if(tradeup[id] > 0)
        All += tradeup[id]

    if(All < 10 && Alls < 10)
    {
        if(Alls > 0)
            print_color(id, "!g%s!t Ai nevoie de 10 skinuri iar tu ai %d si %d stattrack!",Prefix,All,Alls);
        else
            print_color(id, "!g%s!t Ai nevoie de 10 skinuri iar tu ai %d!",Prefix,All);
        MenuMod[id] = 0
        Menu(id)
        return 1;
    }
    All = 0
    new fol[MAX+1]
    new fol2[MAX+1]
    if(tradeup[id] > 0)
        formatex(Line, 127, "Trade Up Contract [%d/10]^nPress 0 for cancel contract",tradeup[id]);
    else if(tradeups[id] >0)
        formatex(Line, 127, "Trade Up Contract [%d/10]^nPress 0 for cancel contract",tradeups[id]);

    else
        formatex(Line, 127, "Trade Up Contract [0/10]^nPress 0 for cancel contract");
    new Menu = menu_create(Line, "tradeupm");
    for(new i = 1; i < AllWeapon; i++)
    {
        if(uWeapon[id] == 0 || coldown[id] != -1|| WeaponDrop <= 10)
            continue;

        if(tradeup[id] != 0)
        {
            for(new a = 0; a < tradeup[id]; a++)
            {
                new dsaa = uWeapon[id]-stattrack[id]
                if(dsaa && fol == 0)
                {
                    num_to_str(i, String, 31);
                    formatex(Line, 127, "%L", LANG_SERVER, "SKINPIECE", WeaponNames, dsaa);
                    menu_additem(Menu, Line, String);
                    fol = 1
                }
            }
        }
        else if(tradeups[id] != 0)
        {
            for(new a = 0; a < tradeups[id]; a++)
            {
                new dre = i+500 
                if(stattrack[id] && fol2 == 0)
                {
                    formatex(String, 31, "%d", dre);
                    formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SKINPIECE", WeaponNames, stattrack[id]);
                    menu_additem(Menu, Line, String);
                    fol2 = 1
                }
            }
        }
        else
        {
            if(stattrack[id])
            {
                new bda
                bda = i+500
                formatex(String, 31, "%d", bda);
                formatex(Line, 127, "%L\w(\yStatTrack\w)", LANG_SERVER, "SKINPIECE", WeaponNames, stattrack[id]);
                menu_additem(Menu, Line, String);
            }
            if(uWeapon[id] > stattrack[id])
            {
                new dsa = uWeapon[id]-stattrack[id]
                num_to_str(i, String, 31);
                formatex(Line, 127, "%L", LANG_SERVER, "SKINPIECE", WeaponNames, dsa);
                menu_additem(Menu, Line, String);
            }
        }
    } 
    menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)  
    menu_display(id, Menu, 0);
    return 0;
}
public tradeupm(id, gMenu, Key)
{    
    if(Key == MENU_EXIT)
    {
        menu_destroy ( gMenu );
        if(tradeup[id] != 0 && !task_exists(id+54354))
        {
            for(new i = 1; i < AllWeapon; i++)
            {
                for(new a = 0; a < tradeup[id]; a++)
                {
                    if(contr[a][id] == i)
                    {
                        uWeapon[id]++
                    }
                    if(contr[a][id] == i+500)
                    {
                        uWeapon[id]++
                        stattrack[id]++
                    }
                }
            }
        }
        MenuMod[id] = 0
        Menu(id)
        tradeup[id] = 0
        tradeups[id] = 0
        return PLUGIN_HANDLED;
    }
    new aMenu[2], Data[4][32], sKey[32];
    menu_item_getinfo(gMenu, Key, aMenu[0], Data[0], 31, Data[1], 31, aMenu[1]);
    
    parse(Data[0], sKey, 31);
    Key = str_to_num(sKey);
    if(tradeup[id] < 10)
    {
        if(Key < 500)
        {
            contr[tradeup[id]][id] = Key
            uWeapon[Key][id]--
            server_print("%d",contr[tradeup[id]][id])
            tradeup[id]++;
            contract(id);
        }
        else
        {
            contr[tradeup[id]][id] = Key
            new a = Key-500
            uWeapon[a][id]--
            stattrack[a][id]--
            server_print("%d",contr[tradeup[id]][id])
            tradeups[id]++;
            contract(id);
        }
        if(tradeup[id] == 10||tradeups[id] == 10)
            gocontract(id)

    }
    else
        contract(id);

    Save(id);

    return PLUGIN_CONTINUE;
}
public gocontract(id)
{
    client_print(id, print_center, "Trade Up Contract procesare ...")
    set_task(3.0, "pickup", id+54354)
}
public pickup(id)
{
    id -= 54354
    new b,c,e,All
    for(new i = 1; i < AllWeapon; i++)
    {
        if(uWeapon[id] == 0)
            continue;

        for(new a = 0; a < tradeup[id]; a++)
        {
            if(contr[a][id] == i||contr[a][id] == i+500)
            {
                b += WeaponDrop
            }
        }
    }
    c = random_num(1, 8)
    new dasd = random_num(0,1)

    if(c == 4)
    {
        if(dasd)
            c++
        else
            c--
    }
    else if(c == 6)
<