Плагин не компилируется

T591

Новичок
Сообщения
5
Реакции
0
Плагин не компилируется что делать? Как это решить?
CSS:
#include <amxmodx>
#include <engine>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>

#if AMXX_VERSION_NUM < 183
    #include <colorchat>
    #define MAX_PLAYERS 32
#endif

#define PrimaryWeaponsBitSum          (1<<3|1<<5|1<<7|1<<8|1<<12|1<<13|1<<14|1<<15|1<<18|1<<19|1<<20|1<<21|1<<22|1<<23|1<<24|1<<27|1<<28|1<<30|1<<35)
#define SecondaryWeaponsBitSum        (1<<1|1<<10|1<<11|1<<16|1<<17|1<<26|1<<35)

#define TakeTheMoney(%1,%2)         FM_SetMoney(%1, FM_GetMoney(%1) - %2)
#define SetMoney(%1,%2)         FM_SetMoney(%1, FM_GetMoney(%1) + %2)

#define GetPlayerHullSize(%1)        ((pev(%1, pev_flags) & FL_DUCKING) ? HULL_HEAD : HULL_HUMAN)

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ïóòü ê Ìîäåëÿì Íîæåé èç Ñòèëüíîãî Ìàãàçèíà. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
new BAYONET_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_bayonet.mdl";
new BAYONET_T_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_bayonet_t.mdl";
new BAYONET_P_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/p_bayonet.mdl";

new BUTTERFLY_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_butterfly.mdl";
new BUTTERFLY_T_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_butterfly_t.mdl";
new BUTTERFLY_P_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/p_butterfly.mdl";

new FALCHION_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_falchion.mdl";
new FALCHION_T_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_falchion_t.mdl";
new FALCHION_P_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/p_falchion.mdl";

new GUT_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_gut.mdl";
new GUT_T_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_gut_t.mdl";
new GUT_P_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/p_gut.mdl";

new HUNTSMAN_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_huntsman.mdl";
new HUNTSMAN_T_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_huntsman_t.mdl";
new HUNTSMAN_P_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/p_huntsman.mdl";

new KNIFE_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_knives.mdl";
new KNIFE_T_V_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/v_knives_t.mdl";
new KNIFE_P_MDL[64]         = "models/CS-GO_Mod/StyleWeapon/Knife/p_knives.mdl";

new M9BAYONET_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_m9_bayonet.mdl";
new M9BAYONET_T_V_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/v_m9_bayonet_t.mdl";
new M9BAYONET_P_MDL[64]     = "models/CS-GO_Mod/StyleWeapon/Knife/p_m9_bayonet.mdl";

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ïóòü ê Ìîäåëÿì Íîæåé èç Ñòèëüíîãî Ìàãàçèíà. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Íñòðîéêè, Ðåêëàìà è Òàê Äàëåå. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/

#define iCost1         2500             // ? Öåíà - AK-47 "Neon Revolution"
#define iCost2         3600             // ? Öåíà - M4A4 "Howl"
#define iCost3         4750            // ? Öåíà - AWP "Dragon Lore"
#define iCost4         2350            // ? Öåíà - P90 "Grimm"
#define iCost5         650            // ? Öåíà - Deagle "Blaze"

#define FLAG_AK47     ADMIN_LEVEL_B        // ? Ôëàã - AK-47 "Neon Revolution"
#define FLAG_M4A4     ADMIN_LEVEL_C        // ? Ôëàã - M4A4 "Howl"
#define FLAG_AWP     ADMIN_LEVEL_D        // ? Ôëàã - AWP "Dragon Lore"
#define FLAG_P90     ADMIN_LEVEL_E        // ? Ôëàã - P90 "Grimm"
#define FLAG_DEAGLE     ADMIN_LEVEL_F        // ? Ôëàã - Deagle "Blaze"
#define FLAG_KNIFE     ADMIN_LEVEL_G        // ? Ôëàã - Knife "CS:GO"

#define FLAG_MODE    ADMIN_VOTE        // ? Ôëàã Ïóíêòà - Çàêðûòü\Îòêðûòü Êàðòó
#define FLAG_MUTE    ADMIN_BAN        // ? Ôëàã Ïóíêòà - Ïîñòàâèòü Ìóò Èãðîêó
#define FLAG_KICKS    ADMIN_KICK        // ? Ôëàã Ïóíêòà - Êèêíóòü
#define FLAG_BAN    ADMIN_BAN        // ? Ôëàã Ïóíêòà - Çàáàíèòü
#define FLAG_MAPS    ADMIN_MAP        // ? Ôëàã Ïóíêòà - Ñìåíèòü Êàðòó
#define FLAG_VOTEMAPS    ADMIN_VOTE        // ? Ôëàã Ïóíêòà - Ãîëîñîâàòü çà Êàðòó

#define SHOW_MENU_IP     "vk.com/CS.NETW"    // ? Ðåêëàìà â ìåíþ
#define BUY_DONAT     "vk.com/CS.NETW"     // ? Ðåêëàìà â ÷àòå î ïîêóïêå îðóæèÿ
#define PREFIX_SHOP     "^1[^4CS.NETW^1]"    // ? Ïðåôèêñ äëÿ ìàãàçèíà ñòèëüíîãî îðóæèÿ
#define PREFIX_AMXMOD     "^1[^4CS.NETW^1]"    // ? Ïðåôèêñ äëÿ AmxModMenu

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Íàñòðîéêè, Ðåêëàìà è Òàê Äàëåå. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/

new bool:g_HasBayonet[33], bool:g_HasButterfly[33], bool:g_HasFalchion[33], bool:g_HasGut[33], bool:g_HasHuntsman[33], bool:g_HasKnife[33], bool:g_HasM9Bayonet[33];

new Float:g_fLastCmdTime[33];
new CheckTime;

enum Coordinate { Float:X, Float:Y, Float:Z };

new g_bInfAes[33], g_bInfMission[33], g_bRoundSound[33], g_bChatRunEng[33];

public plugin_init()
{
    register_plugin("[CS:GO Mod] Main Mod", "0.2", "YahOoo!))");
    
    register_clcmd("chooseteam",         "Show__MainMenu");

    CheckTime = register_cvar("cm_unstuck_frequency", "10.0");     // Èíòåðâàë â ñåêóíäàõ ìåæäó ïîâòîðíûì èñïîëüçîâàíèåì ïóíêòà Çàñòðÿë (Stuck)

    register_menucmd(register_menuid("Show_MainMenu"),         (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9),     "Handle_MainMenu");
    register_menucmd(register_menuid("Show_GameMenu"),         (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9),     "Handle_GameMenu");
    register_menucmd(register_menuid("Show_ShopWeaponMenu"),     (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9),     "Handle_ShopWeaponMenu");
    register_menucmd(register_menuid("Show_ShopKnifeMenu"),     (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9),     "Handle_ShopKnifeMenu");
    register_menucmd(register_menuid("Show_AmxModMenu"),         (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9),     "Handle_AmxModMenu");
    register_menucmd(register_menuid("Show_SettingMenu"),         (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9),     "Handle_SettingMenu");

    register_menucmd(register_menuid("Show_TeamMenu"), MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_5|MENU_KEY_6|MENU_KEY_0,     "Handle_TeamMenu");

    register_message(96,     "MessageShowMenu");
    register_message(114,     "MessageVGUIMenu");

    register_event("WeapPickup",    "EVENT_CheckModel",    "b",    "1=19");
    register_event("CurWeapon",    "EVENT_CheckWeapon",    "be",    "1=1");

    /*RegisterHam(Ham_Spawn,    "player",     "HAM_PlayerSpawn",     false);
    RegisterHam(Ham_Killed,     "player",     "HAM_PlayerKilled");
    RegisterHam(Ham_TakeDamage,     "player",     "HAM_TakeDamage",     false);*/
}

public plugin_precache()
{
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ïðåêåø Ìîäåëåé Íîæåé èç Ñòèëüíîãî Ìàãàçèíà. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/

    precache_model(BAYONET_V_MDL);
    precache_model(BAYONET_T_V_MDL);
    precache_model(BAYONET_P_MDL);

    precache_model(BUTTERFLY_V_MDL);
    precache_model(BUTTERFLY_T_V_MDL);
    precache_model(BUTTERFLY_P_MDL);

    precache_model(FALCHION_V_MDL);
    precache_model(FALCHION_T_V_MDL);
    precache_model(FALCHION_P_MDL);

    precache_model(GUT_V_MDL);
    precache_model(GUT_T_V_MDL);
    precache_model(GUT_P_MDL);

    precache_model(HUNTSMAN_V_MDL);
    precache_model(HUNTSMAN_T_V_MDL);
    precache_model(HUNTSMAN_P_MDL);

    precache_model(KNIFE_V_MDL);
    precache_model(KNIFE_T_V_MDL);
    precache_model(KNIFE_P_MDL);

    precache_model(M9BAYONET_V_MDL);
    precache_model(M9BAYONET_T_V_MDL);
    precache_model(M9BAYONET_P_MDL);

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ïðåêåø Ìîäåëåé Íîæåé èç Ñòèëüíîãî Ìàãàçèíà. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
}

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Âñÿêàÿ Âñÿ÷èíà.
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/*public HAM_PlayerSpawn(id)
{
    if(is_user_connected(id))
    {

    }   
}

public HAM_PlayerKilled(iVictim, iAttacker, iCorpse)
{

}

public HAM_TakeDamage(id, iInflictor, iAttacker, Float:flDamage, bitsDamageType)
{
    f(!(get_user_weapon(iAttacker) == CSW_HEGRENADE))
    {
        if(IsPlayer(iInflictor) && g_SuperKnife[iAttacker] && get_user_weapon(iAttacker) == CSW_KNIFE && get_user_team(iAttacker) == 1)
        {
            SetHamParamFloat(4, flDamage * 9.0);
        }
    }
}*/

public EVENT_CheckModel(id)
{
    new szWeapID = read_data(2);
    
    if(szWeapID == CSW_KNIFE && g_HasBayonet[id] == true)
    {
        if(get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, BAYONET_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, BAYONET_V_MDL);

        set_pev(id, pev_weaponmodel2, BAYONET_P_MDL);
    }
    else if(szWeapID == CSW_KNIFE && g_HasButterfly[id] == true)
    {
        if( get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, BUTTERFLY_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, BUTTERFLY_V_MDL);

        set_pev(id, pev_weaponmodel2, BUTTERFLY_P_MDL);
    }
    else if(szWeapID == CSW_KNIFE && g_HasFalchion[id] == true)
    {
        if( get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, FALCHION_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, FALCHION_V_MDL);

        set_pev(id, pev_weaponmodel2, FALCHION_P_MDL);
    }
    else if(szWeapID == CSW_KNIFE && g_HasGut[id] == true)
    {
        if( get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, GUT_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, GUT_V_MDL);

        set_pev(id, pev_weaponmodel2, GUT_P_MDL);
    }
    else if(szWeapID == CSW_KNIFE && g_HasHuntsman[id] == true)
    {
        if( get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, HUNTSMAN_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, HUNTSMAN_V_MDL);

        set_pev(id, pev_weaponmodel2, HUNTSMAN_P_MDL);
    }
    else if(szWeapID == CSW_KNIFE && g_HasKnife[id] == true)
    {
        if( get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, KNIFE_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, KNIFE_V_MDL);

        set_pev(id, pev_weaponmodel2, KNIFE_P_MDL);
    }
    else if(szWeapID == CSW_KNIFE && g_HasM9Bayonet[id] == true)
    {
        if( get_user_team(id) == 1)
        {
            set_pev(id, pev_viewmodel2, M9BAYONET_T_V_MDL);
        } else set_pev(id, pev_viewmodel2, M9BAYONET_V_MDL);

        set_pev(id, pev_weaponmodel2, M9BAYONET_P_MDL);
    }
    return PLUGIN_HANDLED
}

public EVENT_CheckWeapon(id)
{
    new szPlrClip, szPlrAmmo, szPlrWeapId;
    
    szPlrWeapId = get_user_weapon(id, szPlrClip , szPlrAmmo);
    
    if(szPlrWeapId == CSW_KNIFE && (g_HasBayonet[id] | g_HasButterfly[id] | g_HasFalchion[id] | g_HasGut[id] | g_HasHuntsman[id] | g_HasKnife[id] | g_HasM9Bayonet[id]))
    {
        EVENT_CheckModel(id);
    }
    return PLUGIN_HANDLED;
}

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Êîííåêò, äèñêîíåêò èãðîêà. Èãðîê çàøåë íà ñåðâåð.
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public client_connect(id)
{
    g_HasBayonet[id]     = false;
    g_HasButterfly[id]     = false;
    g_HasFalchion[id]     = false;
    g_HasGut[id]         = false;
    g_HasHuntsman[id]     = false;
    g_HasKnife[id]         = true;
    g_HasM9Bayonet[id]     = false;
}

public client_disconnect(id)
{
    g_HasBayonet[id]     = false;
    g_HasButterfly[id]     = false;
    g_HasFalchion[id]     = false;
    g_HasGut[id]         = false;
    g_HasHuntsman[id]     = false;
    g_HasKnife[id]         = false;
    g_HasM9Bayonet[id]     = false;
}

public client_putinserver(id)
{
    g_bInfAes[id]         = true;
        g_bInfMission[id]     = true;
    g_bRoundSound[id]     = true;
    g_bChatRunEng[id]     = true;
}

/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ãëàâíîå Ìåíþ. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__MainMenu(id)
{
    new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<9),
    iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] \wÌåíþ Ñåðâåðà^n\d[\yVK\d:\r%s\d]^n^n", SHOW_MENU_IP);

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wÈãðîâîå Ìåíþ^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \yÌàãàçèí Ñòèëüíîãî Îðóæèÿ^n^n");

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wÑìåíèòü Êîìàíäó^n^n");

    if(get_user_flags(id) & ADMIN_BAN)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wÏàíåëü Àäìèíèñòðàòîðà^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \dÏàíåëü Àäìèíèñòðàòîðà^n");

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \wÒîï 10 Èãðîêîâ^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \wÇàñòðÿë? \rÍàæìè!^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[7] \yÍàñòðîéêè^n^n");
            
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");

    return show_menu(id, iKeys, szMenu, -1, "Show_MainMenu");
}

public Handle_MainMenu(id, iKey)
{
       /*new szName[32]; get_user_name(id, szName, charsmax(szName));*/
 
    switch(iKey)
    {
        case 0: return Show__GameMenu(id);
        case 1: return Show__ShopWeaponMenu(id);
        case 2: return Show__TeamMenu(id);
        case 3: return Show__AmxModMenu(id);
        case 4: return client_cmd(id, "say /top 10");
        case 5: return ClientCommand_UnStick(id);
        case 6: return Show__SettingMenu(id);
        case 9: return PLUGIN_HANDLED;
    }
    return PLUGIN_HANDLED;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ãëàâíîå Ìåíþ. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Èãðîâîå Ìåíþ. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__GameMenu(id)
{
    new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<9),
    iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] \wÈãðîâîå Ìåíþ^n\d[\yVK\d:\r%s\d]^n^n", SHOW_MENU_IP);

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wÐåæèì Êàðòû^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wÏîñòàâèòü Ìóò^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wÁàí Èãðîêà^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wËè÷íûå Áîíóñû^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \wÏåðåäà÷à Äåíåã^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \wÇàäàíèÿ è Ìèññèè^n^n^n^n");
            
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");

    return show_menu(id, iKeys, szMenu, -1, "Show_GameMenu");
}

public Handle_GameMenu(id, iKey)
{
       /*new szName[32]; get_user_name(id, szName, charsmax(szName));*/
 
    switch(iKey)
    {
        case 0: return client_cmd(id, "say /mode");
        case 1: return client_cmd(id, "say /mute");
        case 2: return client_cmd(id, "say /voteban");
        case 3: return client_cmd(id, "say /bonus");
        case 4: return client_cmd(id, "say /donate");
        case 5: return client_cmd(id, "say /mission");
        case 9: return PLUGIN_HANDLED;
    }
    return PLUGIN_HANDLED;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Èãðîâîå Ìåíþ. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìàãàçèí Ñòèëüíîãî Îðóæèÿ. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__ShopWeaponMenu(id)
{
    new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<9),
    iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] \wÌàãàçèí Ñòèëüíîãî Îðóæèÿ^n\d[\yVK\d:\r%s\d]^n^n", SHOW_MENU_IP);

    if(get_user_flags(id) & FLAG_AK47)
    {
        if(is_user_alive(id))
        {
            if(FM_GetMoney(id) >= iCost1)
            {
                iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wAK47   \r<<\yNeon Revolution\r>> \y[\r%d\d$\y]^n", iCost1);
            } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wAK47   \r<<\yNeon Revolution\r>> \y[\r%d\d$\y]^n", iCost1);
        } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \dAK47   <<Neon Revolution>>\R\r[ Âû Ìåðòâû  ]^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \dAK47   <<Neon Revolution>>\R\r[ Íå Êóïëåíî  ]^n");

    if(get_user_flags(id) & FLAG_M4A4)
    {
        if(is_user_alive(id))
        {
            if(FM_GetMoney(id) >= iCost2)
            {
                iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wM4A4   \r<<\yHowl\r>> \y[\r%d\d$\y]^n", iCost2);
            } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wM4A4   \r<<\yHowl\r>> \y[\r%d\d$\y]^n", iCost2);
        } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \dM4A4   <<Howl>>\R\r[ Âû Ìåðòâû  ]^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \dM4A4   <<Howl>>\R\r[ Íå Êóïëåíî  ]^n");

    if(get_user_flags(id) & FLAG_AWP)
    {
        if(is_user_alive(id))
        {
            if(FM_GetMoney(id) >= iCost3)
            {
                iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wAWP    \r<<\yDragon Lore\r>> \y[\r%d\d$\y]^n", iCost3);
            } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wAWP    \r<<\yDragon Lore\r>> \y[\r%d\d$\y]^n", iCost3);
        } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \dAWP    <<Dragon Lore>>\R\r[ Âû Ìåðòâû  ]^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \dAWP    <<Dragon Lore>>\R\r[ Íå Êóïëåíî  ]^n");

    if(get_user_flags(id) & FLAG_P90)
    {
        if(is_user_alive(id))
        {
            if(FM_GetMoney(id) >= iCost4)
            {
                iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wP90    \r<<\yGrimm\r>> \y[\r%d\d$\y]^n", iCost4);
            } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wP90    \r<<\yGrimm\r>> \y[\r%d\d$\y]^n", iCost4);
        } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \dP90    <<Grimm>>\R\r[ Âû Ìåðòâû  ]^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \dP90    <<Grimm>>\R\r[ Íå Êóïëåíî  ]^n");

    if(get_user_flags(id) & FLAG_DEAGLE)
    {
        if(is_user_alive(id))
        {
            if(FM_GetMoney(id) >= iCost5)
            {
                iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \wDeagle \r<<\yBlaze\r>> \y[\r%d\d$\y]^n^n", iCost5);
            } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \wDeagle \r<<\yBlaze\r>> \y[\r%d\d$\y]^n^n", iCost5);
        } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \dDeagle <<Blaze>>\R\r[ Âû Ìåðòâû  ]^n^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \dDeagle <<Blaze>>\R\r[ Íå Êóïëåíî  ]^n^n");

    if(get_user_flags(id) & FLAG_KNIFE)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \wÍàáîð Íîæåé èç \yCS\r:\yGO^n^n^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \dÍàáîð Íîæåé èç CS:GO\R\r[ Íå Êóïëåíî  ]^n^n^n");
            
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");

    return show_menu(id, iKeys, szMenu, -1, "Show_ShopWeaponMenu");
}

public Handle_ShopWeaponMenu(id, iKey)
{
       /*new szName[32]; get_user_name(id, szName, charsmax(szName));*/
 
    switch(iKey)
    {
        case 0:
        {
            if(!is_user_alive(id))
            {                                                                                                   
                client_print_color(id, print_team_default, "%s ^1Âû äîëæíû áûòü ^3Æèâû^1!", PREFIX_SHOP);
                return PLUGIN_HANDLED;
            }

            if(get_user_flags(id) & FLAG_M4A4)
            {
                if(FM_GetMoney(id) >= iCost2)
                {
                    client_cmd(id, "akastylegiveme");

                    TakeTheMoney(id, iCost1);
                    client_print_color(id, print_team_default, "%s ^1Âû óñïåøíî êóïèëè ^4AK47 ^1<<^3Neon Revolution^1>> !", PREFIX_SHOP);
                } else client_print_color(id, print_team_default, "%s ^1Âàì íå õâàòàåò ^1äåíåã íà ^4AK47 ^1<<^3Neon Revolution^1>> !", PREFIX_SHOP);
            } else client_print_color(id, print_team_default, "%s ^1Âû íå ïðèîáðåëè ^4AK47 ^1<<^3Neon Revolution^1>> ! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_SHOP, BUY_DONAT);
        }
        case 1:
        {
            if(!is_user_alive(id))                                             
            {                                                                                                   
                client_print_color(id, print_team_default, "%s ^1Âû äîëæíû áûòü ^3Æèâû^1!", PREFIX_SHOP);
                return PLUGIN_HANDLED;
            }

            if(get_user_flags(id) & FLAG_M4A4)
            {
                if(FM_GetMoney(id) >= iCost2)
                {
                    client_cmd(id, "mkastylegiveme");

                    TakeTheMoney(id, iCost2);
                    client_print_color(id, print_team_default, "%s ^1Âû óñïåøíî êóïèëè ^4M4A4 ^1<<^3Howl^1>> !", PREFIX_SHOP);
                } else client_print_color(id, print_team_default, "%s ^1Âàì íå õâàòàåò ^1äåíåã íà ^4M4A4 ^1<<^3Howl^1>> !", PREFIX_SHOP);
            } else client_print_color(id, print_team_default, "%s ^1Âû íå ïðèîáðåëè ^4M4A4 ^1<<^3Howl^1>> ! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_SHOP, BUY_DONAT);
        }
        case 2:
        {
            if(!is_user_alive(id))                                                 
            {
                client_print_color(id, print_team_default, "%s ^1Âû äîëæíû áûòü ^3Æèâû^1!", PREFIX_SHOP);
                return PLUGIN_HANDLED;
            }

            if(get_user_flags(id) & FLAG_AWP)
            {
                if(FM_GetMoney(id) >= iCost3)
                {
                    client_cmd(id, "awpstylegiveme");

                    TakeTheMoney(id, iCost3);
                    client_print_color(id, print_team_default, "%s ^1Âû óñïåøíî êóïèëè ^4AWP ^1<<^3Dragon Lore^1>> !", PREFIX_SHOP);
                } else client_print_color(id, print_team_default, "%s ^1Âàì íå õâàòàåò ^1äåíåã íà ^4AWP ^1<<^3Dragon Lore^1>> !", PREFIX_SHOP);
            } else client_print_color(id, print_team_default, "%s ^1Âû íå ïðèîáðåëè ^4AWP ^1<<^3Dragon Lore^1>> ! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_SHOP, BUY_DONAT);
        }
        case 3:
        {
            if(!is_user_alive(id))
            {
                client_print_color(id, print_team_default, "%s ^1Âû äîëæíû áûòü ^3Æèâû^1!", PREFIX_SHOP);
                return PLUGIN_HANDLED;
            }

            if(get_user_flags(id) & FLAG_P90)
            {
                if(FM_GetMoney(id) >= iCost4)
                {
                    client_cmd(id, "p90stylegiveme");

                    TakeTheMoney(id, iCost4);
                    client_print_color(id, print_team_default, "%s ^1Âû óñïåøíî êóïèëè ^4P90 ^1<<^3Grimm^1>> !", PREFIX_SHOP);
                } else client_print_color(id, print_team_default, "%s ^1Âàì íå õâàòàåò ^1äåíåã íà ^4P90 ^1<<^3Grimm^1>> !", PREFIX_SHOP);
            } else client_print_color(id, print_team_default, "%s ^1Âû íå ïðèîáðåëè ^4P90 ^1<<^3Grimm^1>> ! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_SHOP, BUY_DONAT);
        }
        case 4:
        {
            if(!is_user_alive(id))
            {
                client_print_color(id, print_team_default, "%s ^1Âû äîëæíû áûòü ^3Æèâû^1!", PREFIX_SHOP);
                return PLUGIN_HANDLED;
            }

            if(get_user_flags(id) & FLAG_DEAGLE)
            {
                if(FM_GetMoney(id) >= iCost5)
                {
                    client_cmd(id, "deaglestylegiveme");

                    TakeTheMoney(id, iCost5);
                    client_print_color(id, print_team_default, "%s ^1Âû óñïåøíî êóïèëè ^4Deagle ^1<<^3Blaze^1>> !", PREFIX_SHOP);
                } else client_print_color(id, print_team_default, "%s ^1Âàì íå õâàòàåò ^1äåíåã íà ^4Deagle ^1<<^3Blaze^1>> !", PREFIX_SHOP);
            } else client_print_color(id, print_team_default, "%s ^1Âû íå ïðèîáðåëè ^4Deagle ^1<<^3Blaze^1>> ! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_SHOP, BUY_DONAT);
        }
        case 5:
        {
            if(get_user_flags(id) & FLAG_KNIFE)
            {
                return Show__ShopKnifeMenu(id);
            } else client_print_color(id, print_team_default, "%s ^1Âû íå ïðèîáðåëè ^4Íîæè ^1<<^3CS^4:^3GO^1>> ! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_SHOP, BUY_DONAT);
        }
        case 9: return PLUGIN_HANDLED;
    }
    return PLUGIN_HANDLED;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìàãàçèí Ñòèëüíîãî Îðóæèÿ. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Íîæè CS:GO èç Ìàãàçèíà Ñòèëüíîãî Îðóæèÿ. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__ShopKnifeMenu(id)
{
    new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<9),
    iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] \wÌàãàçèí Ñòèëüíûõ Íîæåé^n\d[\yVK\d:\r%s\d]^n^n", SHOW_MENU_IP);

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wÍîæ   \r<<\yBayonet\r>>^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wÍîæ   \r<<\yButterfly\r>>^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wÍîæ   \r<<\yFalchion\r>>^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wÍîæ   \r<<\yGut\r>>^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \wÍîæ   \r<<\yHuntsman\r>>^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \wÍîæ   \r<<\yM9 Bayonet\r>>^n^n");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[7] \wÍîæ   \r<<\yStandart\r>>^n^n");
            
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");

    return show_menu(id, iKeys, szMenu, -1, "Show_ShopKnifeMenu");
}

public Handle_ShopKnifeMenu(id, iKey)
{
       /*new szName[32]; get_user_name(id, szName, charsmax(szName));*/
 
    switch(iKey)
    {
        case 0:
        {
            g_HasBayonet[id]     = true;
            g_HasButterfly[id]     = false;
            g_HasFalchion[id]     = false;
            g_HasGut[id]         = false;
            g_HasHuntsman[id]     = false;
            g_HasKnife[id]         = false;
            g_HasM9Bayonet[id]     = false;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3Bayonet^1>> !", PREFIX_SHOP);
        }
        case 1:
        {
            g_HasBayonet[id]     = false;
            g_HasButterfly[id]     = true;
            g_HasFalchion[id]     = false;
            g_HasGut[id]         = false;
            g_HasHuntsman[id]     = false;
            g_HasKnife[id]         = false;
            g_HasM9Bayonet[id]     = false;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3Butterfly^1>> !", PREFIX_SHOP);
        }
        case 2:
        {
            g_HasBayonet[id]     = false;
            g_HasButterfly[id]     = false;
            g_HasFalchion[id]     = true;
            g_HasGut[id]         = false;
            g_HasHuntsman[id]     = false;
            g_HasKnife[id]         = false;
            g_HasM9Bayonet[id]     = false;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3Falchion^1>> !", PREFIX_SHOP);
        }
        case 3:
        {
            g_HasBayonet[id]     = false;
            g_HasButterfly[id]     = false;
            g_HasFalchion[id]     = false;
            g_HasGut[id]         = true;
            g_HasHuntsman[id]     = false;
            g_HasKnife[id]         = false;
            g_HasM9Bayonet[id]     = false;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3Gut^1>> !", PREFIX_SHOP);
        }
        case 4:
        {
            g_HasBayonet[id]     = false;
            g_HasButterfly[id]     = false;
            g_HasFalchion[id]     = false;
            g_HasGut[id]         = false;
            g_HasHuntsman[id]     = true;
            g_HasKnife[id]         = false;
            g_HasM9Bayonet[id]     = false;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3Huntsman^1>> !", PREFIX_SHOP);
        }
        case 5:
        {
            g_HasBayonet[id]     = false;
            g_HasButterfly[id]     = false;
            g_HasFalchion[id]     = false;
            g_HasGut[id]         = false;
            g_HasHuntsman[id]     = false;
            g_HasKnife[id]         = false;
            g_HasM9Bayonet[id]     = true;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3M9 Bayonet^1>> !", PREFIX_SHOP);
        }
        case 6:
        {
            g_HasBayonet[id]     = false;
            g_HasButterfly[id]     = false;
            g_HasFalchion[id]     = false;
            g_HasGut[id]         = false;
            g_HasHuntsman[id]     = false;
            g_HasKnife[id]         = true;
            g_HasM9Bayonet[id]     = false;

            client_print_color(id, print_team_default, "%s ^1Âû âçÿëè ^4Knife ^1<<^3Standart^1>> !", PREFIX_SHOP);
        }
        case 9: return PLUGIN_HANDLED;
    }
    return PLUGIN_HANDLED;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Íîæè CS:GO èç Ìàãàçèíà Ñòèëüíîãî Îðóæèÿ. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìåíþ Âûáîðà Êîìàíäû. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__TeamMenu(id)
{
    new szMenu[512], iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] Ìåíþ Âûáîðà Êîìàíäû:^n^n"), iKeys = MENU_KEY_0;
    new iNumTe = get_teamplayersnum(CS_TEAM_T), iNumCt = get_teamplayersnum(CS_TEAM_CT), CsTeams:iTeam = cs_get_user_team(id);
    if(iNumTe > iNumCt) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \dÒåððîðèñòû^n");
    else
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wÒåððîðèñòû^n");
        iKeys |= MENU_KEY_1;
    }
    if(iNumCt > iNumTe) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \dÊîíòð Òåððîðèñòû^n^n^n");
    else
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wÊîíòð Òåððîðèñòû^n^n^n");
        iKeys |= MENU_KEY_2;
    }
    if(CS_TEAM_UNASSIGNED < iTeam < CS_TEAM_SPECTATOR) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \dÑëó÷àéíûé Âûáîð^n^n");
    else
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \yÑëó÷àéíûé Âûáîð^n^n");
        iKeys |= MENU_KEY_5;
    }
    if(iTeam == CS_TEAM_SPECTATOR) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \dÍàáëþäåíèå^n^n^n");
    else
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \wÍàáëþäàòåëè^n");
        iKeys |= MENU_KEY_6;
    }
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");
    return show_menu(id, iKeys, szMenu, -1, "Show_TeamMenu");
}

public Handle_TeamMenu(id, iKey)
{
    switch(iKey)
    {
        case 0:
        {
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "1");
            engclient_cmd(id, "joinclass", "6");
        }
        case 1:
        {
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "2");
            engclient_cmd(id, "joinclass", "6");
        }
        case 2:
        {
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "3");
            engclient_cmd(id, "joinclass", "6");
        }
        case 4:
        {
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "5");
            engclient_cmd(id, "joinclass", "6");
        }
        case 5:
        {
            user_kill(id, 1);
            engclient_cmd(id, "jointeam", "6");
        }
    }
    show_menu(id, 0, "^n", 1);
    return PLUGIN_HANDLED;
}

public MessageShowMenu(iMsgId, iMsgDest, iReceiver)
{
    static szArg4[20]; get_msg_arg_string(4, szArg4, charsmax(szArg4));
    if(equal(szArg4, "#Team_Select", 12) || equal(szArg4, "#IG_Team_Select", 15) || equal(szArg4, "#IG_VIP_Team_Select", 19))
    {
        set_pdata_int(iReceiver, 205, 0);
        return Show__TeamMenu(iReceiver);
    }
    return PLUGIN_CONTINUE;
}

const _VGUI_Menu_Team = 2
const _VGUI_Menu_Class_T = 26
const _VGUI_Menu_Class_CT = 27

const IsTargetMenu = ((1 << _VGUI_Menu_Team)|(1 << _VGUI_Menu_Class_T)|(1 << _VGUI_Menu_Class_CT))

const VGUIMenu_MenuType = 1
const m_iMenu = 205

public MessageVGUIMenu(iMsgId, iMsgDest, iReceiver)
{
    new iMenu
    if(IsTargetMenu & (1 << (iMenu = get_msg_arg_int(VGUIMenu_MenuType))))
    {
        if(iMenu == _VGUI_Menu_Team)
            Show__TeamMenu(iReceiver);

        set_pdata_int(iReceiver, m_iMenu, 0);

        return PLUGIN_HANDLED
    }
    return PLUGIN_CONTINUE;
}

get_teamplayersnum(const CsTeams:iTeam)
{
    static players[32], iNum;
    get_players(players, iNum, "che", iTeam == CS_TEAM_T ? "TERRORIST" : "CT"); 
    return iNum;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìåíþ Âûáîðà Êîìàíäû. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìåíþ Àäìèíèñòðàòîðà (AmxModMenu). (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__AmxModMenu(id)
{
    new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<9),
    iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] \wÌåíþ\r: \yAmxModMenu^n\d[\yVK\d:\r%s\d]^n^n", SHOW_MENU_IP);

    if(get_user_flags(id) & FLAG_MODE)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wÇàêðûòü\r/\wÎòêðûòü Êàðòó^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \dÇàêðûòü\r/\dÎòêðûòü Êàðòó^n");

    if(get_user_flags(id) & FLAG_MUTE)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wÏîñòàâèòü \yÌóò \wÈãðîêó^n^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \dÏîñòàâèòü \yÌóò \dÈãðîêó^n^n");

    if(get_user_flags(id) & FLAG_KICKS)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wÊèêíóòü^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \dÊèêíóòü^n");

    if(get_user_flags(id) & FLAG_BAN)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wÇàáàíèòü^n^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \dÇàáàíèòü^n^n");

    if(get_user_flags(id) & FLAG_MAPS)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \wÑìåíèòü Êàðòó^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[5] \dÑìåíèòü Êàðòó^n");

    if(get_user_flags(id) & FLAG_VOTEMAPS)
    {
        iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \wÃîëîñîâàíèå çà Êàðòó^n^n^n");
    } else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[6] \dÃîëîñîâàíèå çà Êàðòó^n^n^n");
            
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");

    return show_menu(id, iKeys, szMenu, -1, "Show_AmxModMenu");
}

public Handle_AmxModMenu(id, iKey)
{
       /*new szName[32]; get_user_name(id, szName, charsmax(szName));*/
 
    switch(iKey)
    {
        case 0:
        {
            if(get_user_flags(id) & FLAG_MODE)
            {
                client_cmd(id, "say /change");
            } else client_print_color(id, print_team_default, "%s ^1Äëÿ íà÷àëà ïðèîáðåòèòå ^3AmxModMenu^1! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_AMXMOD, BUY_DONAT);
        }
        case 1:
        {
            if(get_user_flags(id) & FLAG_MUTE)
            {
                client_cmd(id, "amx_gagmenu");
            } else client_print_color(id, print_team_default, "%s ^1Äëÿ íà÷àëà ïðèîáðåòèòå ^3AmxModMenu^1! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_AMXMOD, BUY_DONAT);       
        }
        case 2:
        {
            if(get_user_flags(id) & FLAG_KICKS)
            {
                client_cmd(id, "amx_kickmenu");
            } else client_print_color(id, print_team_default, "%s ^1Äëÿ íà÷àëà ïðèîáðåòèòå ^3AmxModMenu^1! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_AMXMOD, BUY_DONAT);   
        }
        case 3:
        {
            if(get_user_flags(id) & FLAG_BAN)
            {
                client_cmd(id, "amx_banmenu");
            } else client_print_color(id, print_team_default, "%s ^1Äëÿ íà÷àëà ïðèîáðåòèòå ^3AmxModMenu^1! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_AMXMOD, BUY_DONAT);
        }
        case 4:
        {
            if(get_user_flags(id) & FLAG_MAPS)
            {
                client_cmd(id, "amx_mapmenu");
            } else client_print_color(id, print_team_default, "%s ^1Äëÿ íà÷àëà ïðèîáðåòèòå ^3AmxModMenu^1! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_AMXMOD, BUY_DONAT);
        }
        case 5:
        {
            if(get_user_flags(id) & FLAG_VOTEMAPS)
            {
                client_cmd(id, "amx_votemapmenu");
            } else client_print_color(id, print_team_default, "%s ^1Äëÿ íà÷àëà ïðèîáðåòèòå ^3AmxModMenu^1! Êóïèòü ìîæíî òóò^3: ^4%s", PREFIX_AMXMOD, BUY_DONAT);
        }
        case 9: return PLUGIN_HANDLED;
    }
    return PLUGIN_HANDLED;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìåíþ Àäìèíèñòðàòîðà (AmxModMenu). (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ôóíêöèÿ èç Ìåíþ - Çàñòðÿë. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public ClientCommand_UnStick(const id)
{
    if(!is_user_alive(id))
        return PLUGIN_HANDLED;

    new Float:f_MinFrequency = get_pcvar_float(CheckTime);
    new Float:f_ElapsedCmdTime = get_gametime() - g_fLastCmdTime[id];

    if(f_ElapsedCmdTime < f_MinFrequency)
    {
        set_hudmessage(255, 150, 50, -1.0, 0.65, 0, 6.0, 1.5, 0.1, 0.7);
        show_hudmessage(id, "Ïîäîæäèòå %.f ñåêóíä, ÷òîáû âîñïîëüçîâàòüñÿ åùå ðàç.", f_MinFrequency - f_ElapsedCmdTime);
        return PLUGIN_HANDLED;
    }

    g_fLastCmdTime[id] = get_gametime();

    if(UTIL_UnstickPlayer(id, 32, 128) == 1)
    {
        set_hudmessage(255, 150, 50, -1.0, 0.65, 0, 6.0, 1.5, 0.1, 0.7);
        show_hudmessage(id, "Âû Èçâëå÷åíû!");
    }
    return PLUGIN_CONTINUE;
}

UTIL_UnstickPlayer(const id, const i_StartDistance, const i_MaxAttempts)
{
    if(!is_user_alive(id))    return -1

    static Float:vf_OriginalOrigin[Coordinate], Float:vf_NewOrigin[Coordinate];
    static i_Attempts, i_Distance;

    pev(id, pev_origin, vf_OriginalOrigin);
    i_Distance = i_StartDistance;
    while(i_Distance < 1000)
    {
        i_Attempts = i_MaxAttempts;
        while(i_Attempts--)
        {
            vf_NewOrigin[X] = random_float(vf_OriginalOrigin[X] - i_Distance, vf_OriginalOrigin[X] + i_Distance);
            vf_NewOrigin[Y] = random_float(vf_OriginalOrigin[Y] - i_Distance, vf_OriginalOrigin[Y] + i_Distance);
            vf_NewOrigin[Z] = random_float(vf_OriginalOrigin[Z] - i_Distance, vf_OriginalOrigin[Z] + i_Distance);
            
            engfunc(EngFunc_TraceHull, vf_NewOrigin, vf_NewOrigin, DONT_IGNORE_MONSTERS, GetPlayerHullSize(id), id, 0);

            if(get_tr2(0, TR_InOpen) && !get_tr2(0, TR_AllSolid) && !get_tr2(0, TR_StartSolid))
            {
                engfunc(EngFunc_SetOrigin, id, vf_NewOrigin);
                return 1;
            }
        }
        i_Distance += i_StartDistance;
    }
    return 0;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ôóíêöèÿ èç Ìåíþ - Çàñòðÿë. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìåíþ Íàñòðîåê. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
public Show__SettingMenu(id)
{
    new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<9),
    iLen = formatex(szMenu, charsmax(szMenu), "\y[\rCS\y.\rNETW\y] \wÌåíþ Íàñòðîåê^n\d[\yVK\d:\r%s\d]^n^n", SHOW_MENU_IP);

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[1] \wÈíôîðìåð Çâàíèÿ è Îïûòà\d: %s^n",     g_bInfAes[id] ?     "\yÂêëþ÷åí" : "\rÂûêëþ÷åí");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[2] \wÈíôîðìåð Çàäàíèé è Ìèññèé\d: %s^n",     g_bInfMission[id] ?     "\yÂêëþ÷åí" : "\rÂûêëþ÷åí");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[3] \wÌóçûêà â Êîíöå Ðàóíäà\d: %s^n",     g_bRoundSound[id] ?     "\yÂêëþ÷åíà" : "\rÂûêëþ÷åíà");
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[4] \wßçûê ×àòà\d: %s^n^n^n^n^n",         g_bChatRunEng[id] ?     "\yÐóññêèé" : "\rÀíãëèéñêèé");
            
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[0] \wÂûõîä");

    return show_menu(id, iKeys, szMenu, -1, "Show_SettingMenu");
}

public Handle_SettingMenu(id, iKey)
{
       /*new szName[32]; get_user_name(id, szName, charsmax(szName));*/
 
    switch(iKey)
    {
        case 0:
        {
            g_bInfAes[id] = g_bInfAes[id] ? false : true;
            client_cmd(id, "say /aenable");
            return Show__SettingMenu(id);
        }
        case 1:
        {
            g_bInfMission[id] = g_bInfMission[id] ? false : true;
            client_cmd(id, "say /menable");
            return Show__SettingMenu(id);
        }
        case 2:
        {
            g_bRoundSound[id] = g_bRoundSound[id] ? false : true;
            client_cmd(id, "say /sound");
            return Show__SettingMenu(id);
        }
        case 3:
        {
            g_bChatRunEng[id] = g_bChatRunEng[id] ? false : true;
            client_cmd(id, "say %s", g_bChatRunEng[id] ? "/rus" : "/eng");
            return Show__SettingMenu(id);
        }
        case 9: return PLUGIN_HANDLED;
    }
    return PLUGIN_HANDLED;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ìåíþ Íàñòðîåê. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ñòîêè. (Íà÷àëî).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
stock FM_GetMoney(id)
{
    return get_pdata_int(id, 115);
}

stock FM_SetMoney(id, szMoney, szFlash = 1)
{
    set_pdata_int(id, 115, szMoney);
    
    message_begin(MSG_ONE, get_user_msgid("Money"), _, id);
    write_long(szMoney);
    write_byte(szFlash ? 1 : 0);
    message_end();
}

stock FM_GiveItem(id, const Item[])
{
    static iEnt;
    iEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, Item));
    if(!pev_valid(iEnt)) return;
    
    static Float:iOriginF[3];
    pev(id, pev_origin, iOriginF);
    set_pev(iEnt, pev_origin, iOriginF);
    set_pev(iEnt, pev_spawnflags, pev(iEnt, pev_spawnflags) | SF_NORESPAWN);
    dllfunc(DLLFunc_Spawn, iEnt);
    
    static iSave;
    iSave = pev(iEnt, pev_solid);
    dllfunc(DLLFunc_Touch, iEnt, id);
    if(pev(iEnt, pev_solid) != iSave)
        return;
    
    engfunc(EngFunc_RemoveEntity, iEnt);
}

stock DropWeapons(id, bool:bPistol = false)
{
        new szWeapons[32], szWeaponId, szNum;
        get_user_weapons(id, szWeapons, szNum);
        for(new i = 0; i < szNum; i++)
        {
                szWeaponId = szWeapons[i];
                if(1 << szWeaponId & (bPistol ? SecondaryWeaponsBitSum : PrimaryWeaponsBitSum))
                {
                        FM_StripUserGun(id, szWeaponId);
                }
        }
}

stock bool:FM_StripUserGun(id, Wid = 0, const wName[] = "")
{
    new EntClass[32];

    if (!Wid && wName[0])
    {
        copy(EntClass, sizeof EntClass - 1, wName);
    }
    else
    {
        new szWeapon = Wid, Clip, Ammo;

        if (!szWeapon && !(szWeapon = get_user_weapon(id, Clip, Ammo)))
            return false;
        
        get_weaponname(szWeapon, EntClass, sizeof EntClass - 1);
    }
 
    new EntWeap = FM_FindEntByOwner(-1, EntClass, id);

    if (!EntWeap)
        return false;
 
    engclient_cmd(id, "drop", EntClass);
 
    new EntBox = pev(EntWeap, pev_owner);

    if (!EntBox || EntBox == id)
        return false;
 
    dllfunc(DLLFunc_Think, EntBox);
 
    return true;
}

stock FM_FindEntByOwner(Entity, const ClassName[], Owner)
{
    while((Entity = engfunc(EngFunc_FindEntityByString, Entity, "ClassName", ClassName)) && pev(Entity, pev_owner) != Owner) {}
  
    return Entity;
}
/**=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=
    Ñòîêè. (Êîíåö).
-=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=-*/
492
 
Сверху
Назад