1. gegelga Пользователь

    Регистрация:
    17.03.15
    Сообщения:
    62
    Симпатии:
    11
    И так я хотел добавить в веапонменю колличество дней до окончания админки, но что то не так, почему то не выводится колличество дней:

    Код:
    #include <amxmodx>
    #include <amxmisc>
    #include <cstrike>
    #include <fun>
    #include <WPMGPrintChatColor>
    
    const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_M4A1)|(1<<CSW_AK47)
    const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_DEAGLE)
    
    #define PLUGIN "Weapon Menu"
    #define VERSION "0.1"
    #define AUTHOR "Subb98"
    
    new g_iKey[33]
    new g_iMenuPosition[33]
    new g_iMenuPlayers[33][32]
    new g_iRoundCounter
    new g_pChatInfo
    new g_maxplayers
    
    new can_take_ak47[33]
    new can_take_m4a1[33]
    new can_take_famas[33]
    new can_take_scout[33]
    new can_take_awp[33]
    new can_take_deagle[33]
    new can_take_grenades[33]
    
    #if defined VIPDAY
    native al_admin_expired(index);
    #endif
    
    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)
       
        register_event("TextMsg", "eventTextMsg", "a", "2=#Game_will_restart_in", "2=#Game_Commencing")
        register_event("HLTV", "eventHLTV", "a", "1=0", "2=0")
       
        g_maxplayers = get_maxplayers()
       
        register_clcmd("amx_weaponmenu", "cmdWeaponMenu", ADMIN_MENU, "- show weapon menu")
        register_clcmd("weaponmenu", "cmdWeaponMenu", ADMIN_MENU, "- show weapon menu")   
       
        register_menucmd(register_menuid("Weapon Menu"), 1023, "handleWeaponMenu")
        register_menucmd(register_menuid("Player Menu"), 1023, "handlePlayerMenu")
       
        g_pChatInfo = register_cvar("wm_chatinfo", "1")
    }
    
    public eventTextMsg()
        g_iRoundCounter = 0
       
    public eventHLTV()
    {
        g_iRoundCounter++
       
        for (new id = 1; id <= g_maxplayers; id++)
        {
            can_take_ak47[id] = 0
            can_take_m4a1[id] = 0
            can_take_famas[id] = 0
            can_take_scout[id] = 0
            can_take_awp[id] = 0
            can_take_deagle[id] = 0
            can_take_grenades[id] = 0
        }
    }
    
    public cmdWeaponMenu(id, level, cid)
    {
        if(cmd_access(id, level, cid, 0))
        {
            if(g_iRoundCounter >= 3)
                showWeaponMenu(id)
           
            else
                PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Извините, но эта команда доступна только с третьего раунда.")
        }
    }
    
    showWeaponMenu(id)
    {
        new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9)
       
        #if defined VIPDAY
        new exp = al_admin_expired(id);
        if(exp > 0)
        {
            new sys = get_systime();
            if(exp - sys > 0)
            {
                if((exp - sys) / 86400 > 4)    formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\yДо окончания админки: \w%d \yдней!^n^n", ((exp - sys) / 86400));
                else if (4 >= (exp - sys) / 86400 > 0)    formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\yДо окончания админки: \w%d \yдня!^n^n", ((exp - sys) / 86400));
                else formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\yДо окончания админки: \wпоследний день!^n^n");
            }   
            else
                client_print(id, print_chat, "Действие админки истекло!")   
        }
        else if(exp == 0) new formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\yДо окончания админки: \wбессрочная^n^n");
        #else
        formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n^n");
        #endif
       
        add(szMenu, 511, "\r1. \wAK-47^n")
        add(szMenu, 511, "\r2. \wM4A1^n")
        add(szMenu, 511, "\r3. \wFamas^n")
        add(szMenu, 511, "\r4. \wScout^n")
        add(szMenu, 511, "\r5. \wAWP^n")
        add(szMenu, 511, "\r6. \wDeagle^n")
        add(szMenu, 511, "\r7. \wВсе гранаты^n")
        add(szMenu, 511, "\r8. \wБроня и шлем^n")
        add(szMenu, 511, "\r9. \wНабор сапера^n^n")
        add(szMenu, 511, "\r0. \wВыход")
       
        show_menu(id, iKeys, szMenu, -1, "Weapon Menu")
        }
    
    public handleWeaponMenu(id, iKey)
    {
        if(iKey == 9)
            return
       
        else
        {
            g_iKey[id] = iKey
            showPlayerMenu(id, g_iMenuPosition[id] = 0)
        }
    }
    
    showPlayerMenu(id, iPos)
    {
        if(iPos < 0)
            return
       
        new iTotalPlayersNum
        get_players(g_iMenuPlayers[id], iTotalPlayersNum)
       
        new szMenu[512], szName[32]
        new i, b = 0, iStart = iPos * 7
       
        if(iStart >= iTotalPlayersNum)
            iStart = iPos = g_iMenuPosition[id] = 0
       
        new iLen = formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите игрока:\R%d/%d\w^n^n", iPos + 1, (iTotalPlayersNum / 7 + ((iTotalPlayersNum % 7) ? 1 : 0)))
        new iEnd = iStart + 7, iKeys = MENU_KEY_0|MENU_KEY_8
       
        if(iEnd > iTotalPlayersNum)
            iEnd = iTotalPlayersNum
       
        for(new a = iStart; a < iEnd; ++a)
        {
            i = g_iMenuPlayers[id][a]
            get_user_name(i, szName, 31)
           
            iKeys |= (1<<b)
           
            if(i == id)
                iLen += formatex(szMenu[iLen], 511 - iLen, "\r%d. \y%s^n", ++b, szName)
           
            else
                iLen += formatex(szMenu[iLen], 511 - iLen, "\r%d. \w%s^n", ++b, szName)
        }
       
        if(iEnd != iTotalPlayersNum)
        {
            formatex(szMenu[iLen], 511 - iLen, "^n\r9. \wДалее...^n\r0. \wНазад")
            iKeys |= MENU_KEY_9
        }
        else
            formatex(szMenu[iLen], 511 - iLen, "^n\r0. \wНазад")
       
        show_menu(id, iKeys, szMenu, -1, "Player Menu")
    }
    
    public handlePlayerMenu(id, iKey)
    {
        switch(iKey)
        {
            case 8: showPlayerMenu(id, ++g_iMenuPosition[id])
            case 9:
            {
                if(g_iMenuPosition[id])
                    showPlayerMenu(id, --g_iMenuPosition[id])
               
                else
                    showWeaponMenu(id)
            }
            default:
            {
                new g_iPlayer = g_iMenuPlayers[id][g_iMenuPosition[id] * 7 + iKey]
               
                giveItem(id, g_iPlayer)
                showPlayerMenu(id, g_iMenuPosition[id])
            }
        }
    }
    
    giveItem(id, g_iPlayer)
    {
        new szAdmName[32], szUsrName[32]
       
        get_user_name(id, szAdmName, 31)
        get_user_name(g_iPlayer, szUsrName, 31)
       
        new iChatInfo = get_pcvar_num(g_pChatInfo)
       
        switch(g_iKey[id])
        {
            case 0:{
                if(can_take_ak47[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  AK47 можно взять/выдать !g1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_ak47[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_ak47")
                cs_set_user_bpammo(g_iPlayer, CSW_AK47, 90)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gAK-47!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 1:{
                if(can_take_m4a1[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  M4A1 можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_m4a1[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_m4a1")
                cs_set_user_bpammo(g_iPlayer, CSW_M4A1, 90)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gM4A1!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 2:{
                if(can_take_famas[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Famas можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_famas[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_famas")
                cs_set_user_bpammo(g_iPlayer, CSW_FAMAS, 90)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gFamas!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 3:{
                if(can_take_scout[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Scout можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_scout[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_scout")
                cs_set_user_bpammo(g_iPlayer, CSW_SCOUT, 90)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gScout!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 4:{
                if(can_take_awp[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  AWP можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_awp[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_awp")
                cs_set_user_bpammo(g_iPlayer, CSW_AWP, 30)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gAWP!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 5:{
                if(can_take_deagle[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Deagle можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                   
                }
                can_take_deagle[id]++
                drop_weapons(g_iPlayer, 2)
                give_item(g_iPlayer, "weapon_deagle")
                cs_set_user_bpammo(g_iPlayer, CSW_DEAGLE, 35)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gDeagle!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 6:{
                if(can_take_grenades[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Гранаты можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED   
                }
                can_take_grenades[id]++
                give_item(g_iPlayer, "weapon_hegrenade")
                give_item(g_iPlayer, "weapon_flashbang")
                give_item(g_iPlayer, "weapon_smokegrenade")
               
                cs_set_user_bpammo(g_iPlayer, CSW_FLASHBANG, 2)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал набор гранат игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 7:
            {
                cs_set_user_armor(g_iPlayer, 100, CS_ARMOR_VESTHELM)
               
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал броню и шлем игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 8:
            {
                if(get_user_team(g_iPlayer) == 2)
                {
                    cs_set_user_defuse(g_iPlayer, 1)
                   
                    if(iChatInfo)
                        PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал набор сапера игроку !t%s.!y", szAdmName, szUsrName)
                }
                else
                    PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Извините, но набор сапера доступен только игрокам команды !tCounter-Terrorist!y.")
            }
        }
        return PLUGIN_HANDLED
    }
    
    stock drop_weapons(id, dropwhat)
    {
        static weapons[32], num, i, weaponid
        num = 0
        get_user_weapons(id, weapons, num)
       
        for (i = 0; i < num; i++)
        {
            weaponid = weapons[i]
           
            if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
            {
                static wname[32]
                get_weaponname(weaponid, wname, sizeof wname - 1)
                engclient_cmd(id, "drop", wname)
            }
        }
    }
    
     
  2. by4udilo Пользователь

    Регистрация:
    12.11.15
    Сообщения:
    190
    Симпатии:
    53
    Пол:
    Мужской
    Skype:
    by4udilo
    может exp - sys отличаются по формату, 1 дробное другое нет ,я не уверен, натив всётаки, ошибки может не выдасть ,а дробное число просто не покажет
     
    Последнее редактирование: 16.11.15
  3. neygomon Его Темнейшество :j Команда форума

    Регистрация:
    26.02.15
    Сообщения:
    7.596
    Симпатии:
    4.169
    Пол:
    Мужской
    gegelga, че пишет то?
    --- добавлено 16.11.15 ---
    by4udilo, там не float
     
  4. gegelga Пользователь

    Регистрация:
    17.03.15
    Сообщения:
    62
    Симпатии:
    11
    neygomon, вообще ничего не выводи идёт название меню а потом сразу пункты
    [​IMG]
     
  5. gegelga Пользователь

    Регистрация:
    17.03.15
    Сообщения:
    62
    Симпатии:
    11
    Ну что, больше идей нет=?
     
  6. gegelga Пользователь

    Регистрация:
    17.03.15
    Сообщения:
    62
    Симпатии:
    11
    Я доделал сам, пользуйтесь кому интересно:
    Код:
    #include <amxmodx>
    #include <amxmisc>
    #include <cstrike>
    #include <fun>
    #include <WPMGPrintChatColor>
    
    const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_M4A1)|(1<<CSW_AK47)
    const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_DEAGLE)
    
    #define PLUGIN "Weapon Menu"
    #define VERSION "0.1"
    #define AUTHOR "Subb98"
    
    new g_iKey[33]
    new g_iMenuPosition[33]
    new g_iMenuPlayers[33][32]
    new g_iRoundCounter
    new g_pChatInfo
    new g_maxplayers
    
    new can_take_ak47[33]
    new can_take_m4a1[33]
    new can_take_famas[33]
    new can_take_scout[33]
    new can_take_awp[33]
    new can_take_deagle[33]
    new can_take_grenades[33]
    
    native al_admin_expired(index);
    
    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)
      
        register_event("TextMsg", "eventTextMsg", "a", "2=#Game_will_restart_in", "2=#Game_Commencing")
        register_event("HLTV", "eventHLTV", "a", "1=0", "2=0")
      
        g_maxplayers = get_maxplayers()
      
        register_clcmd("amx_weaponmenu", "cmdWeaponMenu", ADMIN_MENU, "- show weapon menu")
        register_clcmd("weaponmenu", "cmdWeaponMenu", ADMIN_MENU, "- show weapon menu")  
      
        register_menucmd(register_menuid("Weapon Menu"), 1023, "handleWeaponMenu")
        register_menucmd(register_menuid("Player Menu"), 1023, "handlePlayerMenu")
      
        g_pChatInfo = register_cvar("wm_chatinfo", "1")
    }
    
    public eventTextMsg()
        g_iRoundCounter = 0
      
    public eventHLTV()
    {
        g_iRoundCounter++
      
        for (new id = 1; id <= g_maxplayers; id++)
        {
            can_take_ak47[id] = 0
            can_take_m4a1[id] = 0
            can_take_famas[id] = 0
            can_take_scout[id] = 0
            can_take_awp[id] = 0
            can_take_deagle[id] = 0
            can_take_grenades[id] = 0
        }
    }
    
    public cmdWeaponMenu(id, level, cid)
    {
        if(cmd_access(id, level, cid, 0))
        {
            if(g_iRoundCounter >= 3)
                showWeaponMenu(id)
          
            else
                PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  !gWeaponmenu !yдоступно с !g3 !yраунда.")
        }
    }
    
    showWeaponMenu(id)
    {
        new szMenu[512], iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9)
         
        new exp = al_admin_expired(id);
        if(exp > 0)
        {
            new sys = get_systime();
            if(exp - sys > 0)
            {
            if((exp - sys) / 86400 > 4)
            formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\r[\yАдминка\r] \wзакончится через: \r%d \yдней!^n^n", (exp - sys) / 86400)
            else if (4 >= (exp - sys) / 86400 > 0)
            formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\r[\yАдминка\r] \wзакончится через: \r%d \yдня!^n^n", (exp - sys) / 86400)
            else
            formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\r[\yАдминка\r] \wзакончится: \rсегодня!^n^n")
            }  
            else
                client_print(id, print_chat, "Действие админки истекло!");
        }
        else
            formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите экипировку:^n\r=================== ^n\r[\yАдминка\r] \wУ вас \yбессрочная^n^n")
      
        add(szMenu, 511, "\r1. \wAK-47^n")
        add(szMenu, 511, "\r2. \wM4A1^n")
        add(szMenu, 511, "\r3. \wFamas^n")
        add(szMenu, 511, "\r4. \wScout^n")
        add(szMenu, 511, "\r5. \wAWP^n")
        add(szMenu, 511, "\r6. \wDeagle^n")
        add(szMenu, 511, "\r7. \wВсе гранаты^n")
        add(szMenu, 511, "\r8. \wБроня и шлем^n")
        add(szMenu, 511, "\r9. \wНабор сапера^n^n")
        add(szMenu, 511, "\r0. \wВыход")
      
        show_menu(id, iKeys, szMenu, -1, "Weapon Menu")
        }
    
    public handleWeaponMenu(id, iKey)
    {
        if(iKey == 9)
            return
      
        else
        {
            g_iKey[id] = iKey
            showPlayerMenu(id, g_iMenuPosition[id] = 0)
        }
    }
    
    showPlayerMenu(id, iPos)
    {
        if(iPos < 0)
            return
      
        new iTotalPlayersNum
        get_players(g_iMenuPlayers[id], iTotalPlayersNum)
      
        new szMenu[512], szName[32]
        new i, b = 0, iStart = iPos * 7
      
        if(iStart >= iTotalPlayersNum)
            iStart = iPos = g_iMenuPosition[id] = 0
      
        new iLen = formatex(szMenu, 511, "\r[\yРусский стандарт\r] \wВыберите игрока:\R%d/%d\w^n^n", iPos + 1, (iTotalPlayersNum / 7 + ((iTotalPlayersNum % 7) ? 1 : 0)))
        new iEnd = iStart + 7, iKeys = MENU_KEY_0|MENU_KEY_8
      
        if(iEnd > iTotalPlayersNum)
            iEnd = iTotalPlayersNum
      
        for(new a = iStart; a < iEnd; ++a)
        {
            i = g_iMenuPlayers[id][a]
            get_user_name(i, szName, 31)
          
            iKeys |= (1<<b)
          
            if(i == id)
                iLen += formatex(szMenu[iLen], 511 - iLen, "\r%d. \y%s^n", ++b, szName)
          
            else
                iLen += formatex(szMenu[iLen], 511 - iLen, "\r%d. \w%s^n", ++b, szName)
        }
      
        if(iEnd != iTotalPlayersNum)
        {
            formatex(szMenu[iLen], 511 - iLen, "^n\r9. \wДалее...^n\r0. \wНазад")
            iKeys |= MENU_KEY_9
        }
        else
            formatex(szMenu[iLen], 511 - iLen, "^n\r0. \wНазад")
      
        show_menu(id, iKeys, szMenu, -1, "Player Menu")
    }
    
    public handlePlayerMenu(id, iKey)
    {
        switch(iKey)
        {
            case 8: showPlayerMenu(id, ++g_iMenuPosition[id])
            case 9:
            {
                if(g_iMenuPosition[id])
                    showPlayerMenu(id, --g_iMenuPosition[id])
              
                else
                    showWeaponMenu(id)
            }
            default:
            {
                new g_iPlayer = g_iMenuPlayers[id][g_iMenuPosition[id] * 7 + iKey]
              
                giveItem(id, g_iPlayer)
                showPlayerMenu(id, g_iMenuPosition[id])
            }
        }
    }
    
    giveItem(id, g_iPlayer)
    {
        new szAdmName[32], szUsrName[32]
      
        get_user_name(id, szAdmName, 31)
        get_user_name(g_iPlayer, szUsrName, 31)
      
        new iChatInfo = get_pcvar_num(g_pChatInfo)
      
        switch(g_iKey[id])
        {
            case 0:{
                if(can_take_ak47[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  AK47 можно взять/выдать !g1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_ak47[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_ak47")
                cs_set_user_bpammo(g_iPlayer, CSW_AK47, 90)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gAK-47!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 1:{
                if(can_take_m4a1[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  M4A1 можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_m4a1[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_m4a1")
                cs_set_user_bpammo(g_iPlayer, CSW_M4A1, 90)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gM4A1!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 2:{
                if(can_take_famas[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Famas можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_famas[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_famas")
                cs_set_user_bpammo(g_iPlayer, CSW_FAMAS, 90)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gFamas!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 3:{
                if(can_take_scout[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Scout можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_scout[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_scout")
                cs_set_user_bpammo(g_iPlayer, CSW_SCOUT, 90)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gScout!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 4:{
                if(can_take_awp[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  AWP можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                }
                can_take_awp[id]++
                drop_weapons(g_iPlayer, 1)
                give_item(g_iPlayer, "weapon_awp")
                cs_set_user_bpammo(g_iPlayer, CSW_AWP, 30)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gAWP!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 5:{
                if(can_take_deagle[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Deagle можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED
                  
                }
                can_take_deagle[id]++
                drop_weapons(g_iPlayer, 2)
                give_item(g_iPlayer, "weapon_deagle")
                cs_set_user_bpammo(g_iPlayer, CSW_DEAGLE, 35)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал !gDeagle!y игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 6:{
                if(can_take_grenades[id] >= 1)
                {
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Гранаты можно взять/выдать!g 1 !yраз раунд")
                    return PLUGIN_HANDLED  
                }
                can_take_grenades[id]++
                give_item(g_iPlayer, "weapon_hegrenade")
                give_item(g_iPlayer, "weapon_flashbang")
                give_item(g_iPlayer, "weapon_smokegrenade")
              
                cs_set_user_bpammo(g_iPlayer, CSW_FLASHBANG, 2)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал набор гранат игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 7:
            {
                cs_set_user_armor(g_iPlayer, 100, CS_ARMOR_VESTHELM)
              
                if(iChatInfo)
                    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал броню и шлем игроку !t%s!y.", szAdmName, szUsrName)
            }
            case 8:
            {
                if(get_user_team(g_iPlayer) == 2)
                {
                    cs_set_user_defuse(g_iPlayer, 1)
                  
                    if(iChatInfo)
                        PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Администратор !t%s!y выдал набор сапера игроку !t%s.!y", szAdmName, szUsrName)
                }
                else
                    PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!y[!gРусский стандарт!y]  -  Извините, но набор сапера доступен только игрокам команды !tCounter-Terrorist!y.")
            }
        }
        return PLUGIN_HANDLED
    }
    
    stock drop_weapons(id, dropwhat)
    {
        static weapons[32], num, i, weaponid
        num = 0
        get_user_weapons(id, weapons, num)
      
        for (i = 0; i < num; i++)
        {
            weaponid = weapons[i]
          
            if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
            {
                static wname[32]
                get_weaponname(weaponid, wname, sizeof wname - 1)
                engclient_cmd(id, "drop", wname)
            }
        }
    }