Русское сообщество по скриптингу

Vip Admin плагин:: /*029*/ "invalid expression, assumed zero

Все вопросы по работе и настройке AMXX и его плагинов.

Модератор: liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только вопросов по AMX Mod X и его плагинам.

Vip Admin плагин:: /*029*/ "invalid expression, assumed zero

Сообщение Lomt1k » 14 июл 2018, 17:14

Здравствуйте помогите пожалуйста.
Не могу скомпилирывать ошибка: /*029*/ "invalid expression, assumed zero\n",
Зарание спасибо
Вот
Код: Выделить всё
#include < amxmodx >
#include < cstrike >
#include < zombieplague >
#include < fun >
#include < fakemeta >

// Админ оружие
native give_ak47_paladin(id)
native give_awp_buff(id)
native give_dual_uzi(id)


// Вип Оружие
native give_b1(id)
native give_weapon_k1ases(id)
native give_hk416(id)


// Admin Menu
native zp_force_open_admenu(id)



new const PLUGIN_INFO[ ] =
{
    "Vip/Admin Menu",
    "1.1",
    "inf"
}

enum _: pOptionVIP
{
    EURO,
    ARMOR,
    HP
}

new g_menuVipBlock[ 33 ] [ pOptionVIP ]

enum _: pOptionADM
{
    EURO,
    ARMOR,
    HP
}

new g_menuAdmBlock[ 33 ] [ pOptionADM ]

new g_menuBlockWeapon[ 33 ]
new g_menuBlockWeapon2[ 33 ]



public plugin_init( ) 
{
    register_plugin( PLUGIN_INFO[ 0 ] , PLUGIN_INFO[ 1 ] , PLUGIN_INFO [ 2 ] )

    register_clcmd("/admin_menu", "ClCmd_AdminMenu" )
    register_clcmd("/vip_menu" , "ClCmd_VipMenu" )

    register_event( "HLTV" , "event_round_start" , "a" , "1=0" , "2=0" )
}

public event_round_start( id )
{
    for(new i = 0; i < 33; i++)
    {
        if(is_user_connected(i))
        {
            if(g_menuVipBlock[i][ARMOR] >= 1) g_menuVipBlock[i][ARMOR] = 0
            if
(g_menuVipBlock[i][HP] >= 1) g_menuVipBlock[i][HP] = 0

            if
(g_menuAdmBlock[i][ARMOR] >= 1) g_menuAdmBlock[i][ARMOR] = 0
            if
(g_menuAdmBlock[i][HP] >= 1) g_menuAdmBlock[i][HP] = 0

            if
(g_menuBlockWeapon[i] >= 1) g_menuBlockWeapon[i] = 0
            if
(g_menuBlockWeapon2[i] >= 1) g_menuBlockWeapon2[i] = 0
        
}
    }
}

public ClCmd_AdminMenu( id ) 
{
    if(zp_get_user_survivor(id) || zp_get_user_nemesis(id))
    return;

    new g_AdminMenu = menu_create( "\yМеню \rАдмин" , "ClCmd_AdminMenu_Handler" )
    
    if
( get_user_flags( id ) & ADMIN_BAN && !zp_get_user_zombie(id) && is_user_alive(id))    
    menu_additem
( g_AdminMenu , "\wМеню оружие" , "1" , ADMIN_BAN )
    else
    menu_additem
( g_AdminMenu , "\dМеню оружия" , "1" , ADMIN_BAN )
    
    if
( get_user_flags( id ) & ADMIN_BAN && g_menuAdmBlock[ id ] [ EURO ] < 1 )
    menu_additem( g_AdminMenu , "\wВзять \yрубли \r(+50)" , "2" , ADMIN_BAN )
    else
    menu_additem
( g_AdminMenu , "\dВзять рубли (+50)" , "2" , ADMIN_BAN )

    if( get_user_flags( id ) & ADMIN_BAN && g_menuAdmBlock[ id ] [ ARMOR ] < 2  && !zp_get_user_zombie(id) && is_user_alive(id))
    menu_additem( g_AdminMenu , "\wВзять \yБроню \r(+200 ap)" , "3" , ADMIN_BAN )
    else
    menu_additem
( g_AdminMenu , "\dВзять Броню \r(+200 ap)" , "3" , ADMIN_BAN )
    
    if
( get_user_flags( id ) & ADMIN_BAN && g_menuAdmBlock[ id ] [ HP ] < 1  && is_user_alive(id))
    menu_additem( g_AdminMenu , "\wВзять \yЖизни \r(+100 hp)" , "4" , ADMIN_BAN )
    else
    menu_additem
( g_AdminMenu , "\dВзять Жизни \r(+100 hp)" , "4" , ADMIN_BAN )
    
    
    menu_setprop
( g_AdminMenu , MPROP_EXITNAME , "Выход" )
    
    menu_setprop
( g_AdminMenu , MPROP_EXIT , MEXIT_ALL )
    
    menu_display
( id , g_AdminMenu , 0 )    
}

public ClCmd_AdminMenu_Handler( id , pMenu, pItem )
{
    if ( pItem == MENU_EXIT )
    {
        menu_destroy( pMenu )
        return PLUGIN_HANDLED;
    }

    new pData[ 6 ], pName[ 64 ], pAccess, pCallback

    menu_item_getinfo
( pMenu , pItem , pAccess , pData , charsmax( pData ) , pName , charsmax( pName ) , pCallback )

    new pKey = str_to_num( pData )

    switch( pKey )
    {
    case 1:
        {            
            if
(zp_get_user_zombie(id) || !is_user_alive(id))
            {
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            weapon_menu_admin( id )
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    case 2:
        {
            if(g_menuAdmBlock[ id ] [ EURO ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yНа этой карте ты уже не можешь брать !gРубли!y!" )
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            zp_set_user_ammo_packs( id , zp_get_user_ammo_packs( id ) + 50 )
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Рубли]!y!" )
            g_menuAdmBlock[ id ] [ EURO ]++
            ClCmd_AdminMenu( id ) 
        
}
    case 3:
        {        
            if
(zp_get_user_zombie(id) || !is_user_alive(id))
            {
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            if(get_user_armor(id) >= 200)
            {
                PrintChatColor( id ,  "!g[ZP] !yУ вас максимально !gБрони!y!" )
                set_user_armor(id, 200)
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            if(g_menuAdmBlock[ id ] [ ARMOR ] >= 2)
            {
                PrintChatColor( id ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gБроню!y!" )
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            set_pev(id, pev_armorvalue, float(min(pev(id, pev_armorvalue)+200, 200)))
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Броню]!y!" )
            g_menuAdmBlock[ id ] [ ARMOR ]++
            ClCmd_AdminMenu( id ) 
        
}
    case 4:
        {            
            if
(!is_user_alive(id))
            {
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            if(g_menuAdmBlock[ id ] [ HP ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gЖизни!y!" )
                ClCmd_AdminMenu( id ) 
                return PLUGIN_HANDLED
;
            }

            set_user_health( id , get_user_health( id ) +  )
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Жизни]!y!" )
            g_menuAdmBlock[ id ] [ HP ]++
            ClCmd_AdminMenu( id )         
        
}    

    
}


    menu_destroy( pMenu )
    return PLUGIN_HANDLED
}

public weapon_menu_admin( id ) 
{
    new g_AdminWeaponMenu = menu_create( "\yМеню \оружия" , "weapon_menu_admin_Handler" )

    if( get_user_flags( id ) & ADMIN_BAN && g_menuBlockWeapon[ id ] < 1 )
    menu_additem( g_AdminWeaponMenu , "AWP-ELF [x3 Урон]" , "1" , ADMIN_BAN )
    else
    menu_additem
( g_AdminWeaponMenu , "\dAWP-ELF [x3 Урон]" , "1" , ADMIN_BAN )
    
    if
( get_user_flags( id ) & ADMIN_BAN && g_menuBlockWeapon[ id ] < 1 )
    menu_additem( g_AdminWeaponMenu , "Paladin [x3 Урон]" , "2" , ADMIN_BAN )
    else
    menu_additem
( g_AdminWeaponMenu , "\dPaldin [x3 Урон]" , "2" , ADMIN_BAN )
    
    if
( get_user_flags( id ) & ADMIN_BAN && g_menuBlockWeapon[ id ] < 1 )
    menu_additem( g_AdminWeaponMenu , "Dual uzi [x3 Урон]" , "3" , ADMIN_BAN )
    else
    menu_additem
( g_AdminWeaponMenu , "\dDual uzi [x3 Урон]" , "3" , ADMIN_BAN )
    

    menu_setprop
( g_AdminWeaponMenu , MPROP_EXITNAME , "Выход" )    

    menu_setprop
( g_AdminWeaponMenu , MPROP_EXIT , MEXIT_ALL )

    menu_display( id , g_AdminWeaponMenu , 0 )    
}

public weapon_menu_admin_Handler( id , pMenu, pItem )
{
    if ( pItem == MENU_EXIT || ~get_user_flags( id ) & ADMIN_BAN)
    {
        menu_destroy( pMenu )
        return PLUGIN_HANDLED;
    }

    new pData[ 6 ], pName[ 64 ], pAccess, pCallback

    menu_item_getinfo
( pMenu , pItem , pAccess , pData , charsmax( pData ) , pName , charsmax( pName ) , pCallback )

    new pKey = str_to_num( pData )

    switch( pKey )
    {
    case 1:
        {            
            if
(!is_user_alive(id))
            return PLUGIN_HANDLED;

            if(g_menuBlockWeapon[ id ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                weapon_menu_admin( id ) 
                return PLUGIN_HANDLED
            
}

            give_awp_buff(id)
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[AWP-ELF]!y!" )
            g_menuBlockWeapon[ id ]++
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    case 2:
        {            
            if
(!is_user_alive(id))
            return PLUGIN_HANDLED;

            if(g_menuBlockWeapon[ id ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                weapon_menu_admin( id ) 
                return PLUGIN_HANDLED
            
}

            give_ak47_paladin(id)
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Paladin]!y!" )
            g_menuBlockWeapon[ id ]++
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    
    case 3
:
        {            
            if
(!is_user_alive(id))
            return PLUGIN_HANDLED;

            if(g_menuBlockWeapon[ id ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                weapon_menu_admin( id ) 
                return PLUGIN_HANDLED
            
}

            give_dual_uzi(id)
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Dual Uzi]!y!" )
            g_menuBlockWeapon[ id ]++
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
        
    
    
}

    menu_destroy( pMenu )
    return PLUGIN_HANDLED
}

public ClCmd_VipMenu( id ) 
{
    if(zp_get_user_survivor(id) || zp_get_user_nemesis(id))
    return;

    new g_AdminMenu = menu_create( "\yМеню \rВип" , "ClCmd_VipMenu_Handler" )

    if( get_user_flags( id ) & ADMIN_KICK  && !zp_get_user_zombie(id) && is_user_alive(id))
    menu_additem( g_AdminMenu , "\yМеню оружия" , "1" )
    else
    menu_additem
( g_AdminMenu , "\dМеню оружия" , "1" )    
    
    if
( get_user_flags( id ) & ADMIN_KICK && g_menuVipBlock[ id ] [ EURO ] < 1 )
    menu_additem( g_AdminMenu , "\wВзять \yРубли \r(+50)" , "2" , ADMIN_KICK )
    else
    menu_additem
( g_AdminMenu , "\dВзять Рубли (+50)" , "2" , ADMIN_KICK )

    if( get_user_flags( id ) & ADMIN_KICK && g_menuVipBlock[ id ] [ ARMOR ] < 2  && !zp_get_user_zombie(id) && is_user_alive(id))
    menu_additem( g_AdminMenu , "\wВзять \yБроню \r(+100 ap)" , "3" , ADMIN_KICK )
    else
    menu_additem
( g_AdminMenu , "\dВзять Броню (+100 ap)" , "3" , ADMIN_KICK )
    
    if
( get_user_flags( id ) & ADMIN_KICK && g_menuVipBlock[ id ] [ HP ] < 1  && is_user_alive(id))
    menu_additem( g_AdminMenu , "\wВзять \yЖизни \r(+50 hp)" , "4" , ADMIN_KICK )
    else
    menu_additem
( g_AdminMenu , "\dВзять Жизни (+50 hp)" , "4" , ADMIN_KICK )    
    
    menu_setprop
( g_AdminMenu , MPROP_EXITNAME , "Выход" )

    menu_setprop( g_AdminMenu , MPROP_EXIT , MEXIT_ALL )

    menu_display( id , g_AdminMenu , 0 )    
}

public ClCmd_VipMenu_Handler( id , pMenu, pItem )
{
    if ( pItem == MENU_EXIT || ~get_user_flags( id ) & ADMIN_KICK)
    {
        menu_destroy( pMenu )
        return PLUGIN_HANDLED;
    }

    new pData[ 6 ], pName[ 64 ], pAccess, pCallback

    menu_item_getinfo
( pMenu , pItem , pAccess , pData , charsmax( pData ) , pName , charsmax( pName ) , pCallback )

    new pKey = str_to_num( pData )

    switch( pKey )
    {
    case 1:
        {        
            if
(zp_get_user_zombie(id) || !is_user_alive(id))
            {
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }
            weapon_menu_vip( id )
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    case 2:
        {
            if(g_menuVipBlock[ id ] [ EURO ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yНа этой карте ты уже не можешь брать !gРубли!y!" )
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }

            zp_set_user_ammo_packs( id , zp_get_user_ammo_packs( id ) + 50 )
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Рубли]!y!" )
            g_menuVipBlock[ id ] [ EURO ]++
            ClCmd_VipMenu( id )
        }
    case 3:
        {
            if(zp_get_user_zombie(id) || !is_user_alive(id))
            {
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }

            if(get_user_armor(id) >= 100)
            {
                PrintChatColor( id ,  "!g[ZP] !yУ вас максимально !gБрони!y!" )
                set_user_armor(id, 100)
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }

            if(g_menuVipBlock[ id ] [ ARMOR ] >= 2)
            {
                PrintChatColor( id ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gБроню!y!" )
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }

            set_pev(id, pev_armorvalue, float(min(pev(id, pev_armorvalue)+100, 100)))
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Броню]!y!" )
            g_menuVipBlock[ id ] [ ARMOR ]++
            ClCmd_VipMenu( id )
        }
    case 4:
        {
            if(!is_user_alive(id))
            {
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }
            if(g_menuVipBlock[ id ] [ HP ] >=1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gЖизни!y!" )
                ClCmd_VipMenu( id )
                return PLUGIN_HANDLED;
            }

            set_user_health( id , get_user_health( id ) + 50 )
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Жизни]!y!" )
            g_menuVipBlock[ id ] [ HP ]++
            ClCmd_VipMenu( id )        
        
}    
    
    
    
}

    menu_destroy( pMenu )
    return PLUGIN_HANDLED
}





public weapon_menu_vip( id ) 
{
    new g_AdminMenu = menu_create( "\yМеню оружие" , "weapon_menu_vip_Handler" )

    if( get_user_flags( id ) & ADMIN_KICK && g_menuBlockWeapon2[ id ] < 1 )
    menu_additem( g_AdminMenu , "\yBalrog \r[x2 урон]" , "1" , ADMIN_KICK )
    else
    menu_additem
( g_AdminMenu , "\dBalrog [x2 урон]" , "1" , ADMIN_KICK )

    if( get_user_flags( id ) & ADMIN_KICK && g_menuBlockWeapon2[ id ] < 1 )
    menu_additem( g_AdminMenu , "\yK1ases \r[x2 урон]" , "2" , ADMIN_KICK )
    else
    menu_additem
( g_AdminMenu , "\dK1ases [x2 урон]" , "2" , ADMIN_KICK )
    
    if
( get_user_flags( id ) & ADMIN_KICK && g_menuBlockWeapon2[ id ] < 1 )
    menu_additem( g_AdminMenu , "\yBasilisk \r[x2 урон]" , "3" , ADMIN_KICK )
    else
    menu_additem
( g_AdminMenu , "\dBasilisk [x2 урон]" , "3" , ADMIN_KICK )
    
    
    menu_setprop
( g_AdminMenu , MPROP_EXITNAME , "Выход" )

    menu_setprop( g_AdminMenu , MPROP_EXIT , MEXIT_ALL )

    menu_display( id , g_AdminMenu , 0 )    
}

public weapon_menu_vip_Handler( id , pMenu, pItem )
{
    if ( pItem == MENU_EXIT || ~get_user_flags( id ) & ADMIN_KICK)
    {
        menu_destroy( pMenu )
        return PLUGIN_HANDLED;
    }

    new pData[ 6 ], pName[ 64 ], pAccess, pCallback

    menu_item_getinfo
( pMenu , pItem , pAccess , pData , charsmax( pData ) , pName , charsmax( pName ) , pCallback )

    new pKey = str_to_num( pData )

    switch( pKey )
    {
    case 1:
        {            
            if
(g_menuBlockWeapon2[ id ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                weapon_menu_vip( id ) 
                return PLUGIN_HANDLED
            
}
            
            give_b1
(id)
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Balrog]!y!" )
            g_menuBlockWeapon2[ id ]++
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    case 2:
        {            
            if
(g_menuBlockWeapon2[ id ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                weapon_menu_vip( id ) 
                return PLUGIN_HANDLED
            
}
            
            give_weapon_k1ases
(id)
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[K1ases]!y!" )
            g_menuBlockWeapon2[ id ]++
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    case 3:
        {            
            if
(g_menuBlockWeapon2[ id ] >= 1)
            {
                PrintChatColor( id ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                weapon_menu_vip( id ) 
                return PLUGIN_HANDLED
            
}
            
            give_dual_uzi
(id)
            PrintChatColor( id ,  "!g[ZP] !yТы взял !g[Dual_uzi]!y!" )
            g_menuBlockWeapon2[ id ]++
            menu_destroy( pMenu )
            return PLUGIN_HANDLED
        
}
    
        
    
}

    menu_destroy( pMenu )
    return PLUGIN_HANDLED
}

stock PrintChatColor( const id , const input[], any:...) 
{
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)
    
    replace_all
(msg, 190, "!g", "^4" ) // Green Color
    replace_all(msg, 190, "!y", "^1" ) // Default Color
    replace_all(msg, 190, "!team", "^3" ) // Team Color
    
    if 
(id) players[0] = id; else get_players(players, count, "ch")
    {
        for (new i = 0; i < count; i++) 
        
{
            if (is_user_connected(players[i])) 
            
{
                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText" ), _, players[i])
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
        }
    }
Последний раз редактировалось Lomt1k 14 июл 2018, 23:47, всего редактировалось 2 раз(а).
Аватара пользователя
Lomt1k
 
Сообщения: 2
Зарегистрирован: 14 июл 2018, 16:58
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Я ничего не знаю

Re: Ошибка компиляции

Сообщение Subb98 » 14 июл 2018, 22:45

Lomt1k, добрый вечер. Пожалуйста, измените название темы на информативное, в соответствии с Вы должны зарегистрироваться, чтобы видеть ссылки.. Если вы не сделаете этого в течение суток, я сделаю это сам, однако в этом случае вам будет выдано предупреждение в профиль.
«Очень хорошо. Лучше вы, чем я» © Donald J. Trump
Аватара пользователя
Subb98
Модератор
 
Сообщения: 5466
Зарегистрирован: 24 мар 2011, 19:42
Откуда: г. Пермь
Благодарил (а): 1320 раз.
Поблагодарили: 2326 раз.
Опыт программирования: Больше трех лет
Языки программирования: PHP, Ruby

Re: Vip Admin плагин:: /*029*/ "invalid expression, assumed

Сообщение NoPM_N1Ck » 06 авг 2018, 13:48

Код: Выделить всё
#include < amxmodx >
#include < cstrike >
#include < zombieplague >
#include < fun >
#include < fakemeta >
#define HP1 200
// Админ оружие
native give_ak47_paladin(id)
native give_awp_buff(id)
native give_dual_uzi(id)


// Вип Оружие
native give_b1(id)
native give_weapon_k1ases(id)
native give_hk416(id)


// Admin Menu
native zp_force_open_admenu(id)


new const 
PLUGIN_INFO[ ] =
{
    
"Vip/Admin Menu",
    
"1.1",
    
"inf"
}

enum _pOptionVIP
{
    
EURO,
    
ARMOR,
    
HP
}

new 
g_menuVipBlock33 ] [ pOptionVIP ]

enum _pOptionADM
{
    
EURO,
    
ARMOR,
    
HP
}

new 
g_menuAdmBlock33 ] [ pOptionADM ]

new 
g_menuBlockWeapon33 ]
new 
g_menuBlockWeapon233 ]



public 
plugin_init( ) 
{
    
register_pluginPLUGIN_INFO] , PLUGIN_INFO] , PLUGIN_INFO ] )

    
register_clcmd("/admin_menu""ClCmd_AdminMenu" )
    
register_clcmd("/vip_menu" "ClCmd_VipMenu" )

    
register_event"HLTV" "event_round_start" "a" "1=0" "2=0" )
}

public 
event_round_startid )
{
    for(new 
033i++)
    {
        if(
is_user_connected(i))
        {
            if(
g_menuVipBlock[i][ARMOR] >= 1g_menuVipBlock[i][ARMOR] = 0
            
if(g_menuVipBlock[i][HP] >= 1g_menuVipBlock[i][HP] = 0

            
if(g_menuAdmBlock[i][ARMOR] >= 1g_menuAdmBlock[i][ARMOR] = 0
            
if(g_menuAdmBlock[i][HP] >= 1g_menuAdmBlock[i][HP] = 0

            
if(g_menuBlockWeapon[i] >= 1g_menuBlockWeapon[i] = 0
            
if(g_menuBlockWeapon2[i] >= 1g_menuBlockWeapon2[i] = 0
        
}
    }
}

public 
ClCmd_AdminMenuid 
{
    if(
zp_get_user_survivor(id) || zp_get_user_nemesis(id))
    return;

    new 
g_AdminMenu menu_create"\yМеню \rАдмин" "ClCmd_AdminMenu_Handler" )
    
    if( 
get_user_flagsid ) & ADMIN_BAN && !zp_get_user_zombie(id) && is_user_alive(id))    
    
menu_additemg_AdminMenu "\wМеню оружие" "1" ADMIN_BAN )
    else
    
menu_additemg_AdminMenu "\dМеню оружия" "1" ADMIN_BAN )
    
    if( 
get_user_flagsid ) & ADMIN_BAN && g_menuAdmBlockid ] [ EURO ] < )
    
menu_additemg_AdminMenu "\wВзять \yрубли \r(+50)" "2" ADMIN_BAN )
    else
    
menu_additemg_AdminMenu "\dВзять рубли (+50)" "2" ADMIN_BAN )

    if( 
get_user_flagsid ) & ADMIN_BAN && g_menuAdmBlockid ] [ ARMOR ] < 2  && !zp_get_user_zombie(id) && is_user_alive(id))
    
menu_additemg_AdminMenu "\wВзять \yБроню \r(+200 ap)" "3" ADMIN_BAN )
    else
    
menu_additemg_AdminMenu "\dВзять Броню \r(+200 ap)" "3" ADMIN_BAN )
    
    if( 
get_user_flagsid ) & ADMIN_BAN && g_menuAdmBlockid ] [ HP ] < 1  && is_user_alive(id))
    
menu_additemg_AdminMenu "\wВзять \yЖизни \r(+100 hp)" "4" ADMIN_BAN )
    else
    
menu_additemg_AdminMenu "\dВзять Жизни \r(+100 hp)" "4" ADMIN_BAN )
    
    
    
menu_setpropg_AdminMenu MPROP_EXITNAME "Выход" )
    
    
menu_setpropg_AdminMenu MPROP_EXIT MEXIT_ALL )
    
    
menu_displayid g_AdminMenu )    
}

public 
ClCmd_AdminMenu_Handlerid pMenupItem )
{
    if ( 
pItem == MENU_EXIT )
    {
        
menu_destroypMenu )
        return 
PLUGIN_HANDLED;
    }

    new 
pData], pName64 ], pAccesspCallback

    menu_item_getinfo
pMenu pItem pAccess pData charsmaxpData ) , pName charsmaxpName ) , pCallback )

    new 
pKey str_to_numpData )

    switch( 
pKey )
    {
    case 
1:
        {            
            if(
zp_get_user_zombie(id) || !is_user_alive(id))
            {
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }

            
weapon_menu_adminid )
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    case 
2:
        {
            if(
g_menuAdmBlockid ] [ EURO ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yНа этой карте ты уже не можешь брать !gРубли!y!" )
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }

            
zp_set_user_ammo_packsid zp_get_user_ammo_packsid ) + 50 )
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Рубли]!y!" )
            
g_menuAdmBlockid ] [ EURO ]++
            
ClCmd_AdminMenuid 
        }
    case 
3:
        {        
            if(
zp_get_user_zombie(id) || !is_user_alive(id))
            {
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }

            if(
get_user_armor(id) >= 200)
            {
                
PrintChatColorid ,  "!g[ZP] !yУ вас максимально !gБрони!y!" )
                
set_user_armor(id200)
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }

            if(
g_menuAdmBlockid ] [ ARMOR ] >= 2)
            {
                
PrintChatColorid ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gБроню!y!" )
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }

            
set_pev(idpev_armorvaluefloat(min(pev(idpev_armorvalue)+200200)))
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Броню]!y!" )
            
g_menuAdmBlockid ] [ ARMOR ]++
            
ClCmd_AdminMenuid 
        }
    case 
4:
        {            
            if(!
is_user_alive(id))
            {
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }

            if(
g_menuAdmBlockid ] [ HP ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gЖизни!y!" )
                
ClCmd_AdminMenuid 
                return 
PLUGIN_HANDLED;
            }
            
            
set_user_health(idget_user_health(id) + HP1)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Жизни]!y!" )
            
g_menuAdmBlockid ] [ HP ]++
            
ClCmd_AdminMenuid )         
        }    

    }


    
menu_destroypMenu )
    return 
PLUGIN_HANDLED
}

public 
weapon_menu_adminid 
{
    new 
g_AdminWeaponMenu menu_create"\yМеню \оружия" "weapon_menu_admin_Handler" )

    if( 
get_user_flagsid ) & ADMIN_BAN && g_menuBlockWeaponid ] < )
    
menu_additemg_AdminWeaponMenu "AWP-ELF [x3 Урон]" "1" ADMIN_BAN )
    else
    
menu_additemg_AdminWeaponMenu "\dAWP-ELF [x3 Урон]" "1" ADMIN_BAN )
    
    if( 
get_user_flagsid ) & ADMIN_BAN && g_menuBlockWeaponid ] < )
    
menu_additemg_AdminWeaponMenu "Paladin [x3 Урон]" "2" ADMIN_BAN )
    else
    
menu_additemg_AdminWeaponMenu "\dPaldin [x3 Урон]" "2" ADMIN_BAN )
    
    if( 
get_user_flagsid ) & ADMIN_BAN && g_menuBlockWeaponid ] < )
    
menu_additemg_AdminWeaponMenu "Dual uzi [x3 Урон]" "3" ADMIN_BAN )
    else
    
menu_additemg_AdminWeaponMenu "\dDual uzi [x3 Урон]" "3" ADMIN_BAN )
    

    
menu_setpropg_AdminWeaponMenu MPROP_EXITNAME "Выход" )    

    
menu_setpropg_AdminWeaponMenu MPROP_EXIT MEXIT_ALL )

    
menu_displayid g_AdminWeaponMenu )    
}

public 
weapon_menu_admin_Handlerid pMenupItem )
{
    if ( 
pItem == MENU_EXIT || ~get_user_flagsid ) & ADMIN_BAN)
    {
        
menu_destroypMenu )
        return 
PLUGIN_HANDLED;
    }

    new 
pData], pName64 ], pAccesspCallback

    menu_item_getinfo
pMenu pItem pAccess pData charsmaxpData ) , pName charsmaxpName ) , pCallback )

    new 
pKey str_to_numpData )

    switch( 
pKey )
    {
    case 
1:
        {            
            if(!
is_user_alive(id))
            return 
PLUGIN_HANDLED;

            if(
g_menuBlockWeaponid ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                
weapon_menu_adminid 
                return 
PLUGIN_HANDLED
            
}

            
give_awp_buff(id)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[AWP-ELF]!y!" )
            
g_menuBlockWeaponid ]++
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    case 
2:
        {            
            if(!
is_user_alive(id))
            return 
PLUGIN_HANDLED;

            if(
g_menuBlockWeaponid ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                
weapon_menu_adminid 
                return 
PLUGIN_HANDLED
            
}

            
give_ak47_paladin(id)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Paladin]!y!" )
            
g_menuBlockWeaponid ]++
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    
    case 
3:
        {            
            if(!
is_user_alive(id))
            return 
PLUGIN_HANDLED;

            if(
g_menuBlockWeaponid ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                
weapon_menu_adminid 
                return 
PLUGIN_HANDLED
            
}

            
give_dual_uzi(id)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Dual Uzi]!y!" )
            
g_menuBlockWeaponid ]++
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
        
    
    }

    
menu_destroypMenu )
    return 
PLUGIN_HANDLED
}

public 
ClCmd_VipMenuid 
{
    if(
zp_get_user_survivor(id) || zp_get_user_nemesis(id))
    return;

    new 
g_AdminMenu menu_create"\yМеню \rВип" "ClCmd_VipMenu_Handler" )

    if( 
get_user_flagsid ) & ADMIN_KICK  && !zp_get_user_zombie(id) && is_user_alive(id))
    
menu_additemg_AdminMenu "\yМеню оружия" "1" )
    else
    
menu_additemg_AdminMenu "\dМеню оружия" "1" )    
    
    if( 
get_user_flagsid ) & ADMIN_KICK && g_menuVipBlockid ] [ EURO ] < )
    
menu_additemg_AdminMenu "\wВзять \yРубли \r(+50)" "2" ADMIN_KICK )
    else
    
menu_additemg_AdminMenu "\dВзять Рубли (+50)" "2" ADMIN_KICK )

    if( 
get_user_flagsid ) & ADMIN_KICK && g_menuVipBlockid ] [ ARMOR ] < 2  && !zp_get_user_zombie(id) && is_user_alive(id))
    
menu_additemg_AdminMenu "\wВзять \yБроню \r(+100 ap)" "3" ADMIN_KICK )
    else
    
menu_additemg_AdminMenu "\dВзять Броню (+100 ap)" "3" ADMIN_KICK )
    
    if( 
get_user_flagsid ) & ADMIN_KICK && g_menuVipBlockid ] [ HP ] < 1  && is_user_alive(id))
    
menu_additemg_AdminMenu "\wВзять \yЖизни \r(+50 hp)" "4" ADMIN_KICK )
    else
    
menu_additemg_AdminMenu "\dВзять Жизни (+50 hp)" "4" ADMIN_KICK )    
    
    
menu_setpropg_AdminMenu MPROP_EXITNAME "Выход" )

    
menu_setpropg_AdminMenu MPROP_EXIT MEXIT_ALL )

    
menu_displayid g_AdminMenu )    
}

public 
ClCmd_VipMenu_Handlerid pMenupItem )
{
    if ( 
pItem == MENU_EXIT || ~get_user_flagsid ) & ADMIN_KICK)
    {
        
menu_destroypMenu )
        return 
PLUGIN_HANDLED;
    }

    new 
pData], pName64 ], pAccesspCallback

    menu_item_getinfo
pMenu pItem pAccess pData charsmaxpData ) , pName charsmaxpName ) , pCallback )

    new 
pKey str_to_numpData )

    switch( 
pKey )
    {
    case 
1:
        {        
            if(
zp_get_user_zombie(id) || !is_user_alive(id))
            {
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }
            
weapon_menu_vipid )
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    case 
2:
        {
            if(
g_menuVipBlockid ] [ EURO ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yНа этой карте ты уже не можешь брать !gРубли!y!" )
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }

            
zp_set_user_ammo_packsid zp_get_user_ammo_packsid ) + 50 )
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Рубли]!y!" )
            
g_menuVipBlockid ] [ EURO ]++
            
ClCmd_VipMenuid )
        }
    case 
3:
        {
            if(
zp_get_user_zombie(id) || !is_user_alive(id))
            {
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }

            if(
get_user_armor(id) >= 100)
            {
                
PrintChatColorid ,  "!g[ZP] !yУ вас максимально !gБрони!y!" )
                
set_user_armor(id100)
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }

            if(
g_menuVipBlockid ] [ ARMOR ] >= 2)
            {
                
PrintChatColorid ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gБроню!y!" )
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }

            
set_pev(idpev_armorvaluefloat(min(pev(idpev_armorvalue)+100100)))
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Броню]!y!" )
            
g_menuVipBlockid ] [ ARMOR ]++
            
ClCmd_VipMenuid )
        }
    case 
4:
        {
            if(!
is_user_alive(id))
            {
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }
            if(
g_menuVipBlockid ] [ HP ] >=1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВ этом раунде ты уже не можешь брать !gЖизни!y!" )
                
ClCmd_VipMenuid )
                return 
PLUGIN_HANDLED;
            }

            
set_user_healthid get_user_healthid ) + 50 )
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Жизни]!y!" )
            
g_menuVipBlockid ] [ HP ]++
            
ClCmd_VipMenuid )        
        }    
    
    
    }

    
menu_destroypMenu )
    return 
PLUGIN_HANDLED
}





public 
weapon_menu_vipid 
{
    new 
g_AdminMenu menu_create"\yМеню оружие" "weapon_menu_vip_Handler" )

    if( 
get_user_flagsid ) & ADMIN_KICK && g_menuBlockWeapon2id ] < )
    
menu_additemg_AdminMenu "\yBalrog \r[x2 урон]" "1" ADMIN_KICK )
    else
    
menu_additemg_AdminMenu "\dBalrog [x2 урон]" "1" ADMIN_KICK )

    if( 
get_user_flagsid ) & ADMIN_KICK && g_menuBlockWeapon2id ] < )
    
menu_additemg_AdminMenu "\yK1ases \r[x2 урон]" "2" ADMIN_KICK )
    else
    
menu_additemg_AdminMenu "\dK1ases [x2 урон]" "2" ADMIN_KICK )
    
    if( 
get_user_flagsid ) & ADMIN_KICK && g_menuBlockWeapon2id ] < )
    
menu_additemg_AdminMenu "\yBasilisk \r[x2 урон]" "3" ADMIN_KICK )
    else
    
menu_additemg_AdminMenu "\dBasilisk [x2 урон]" "3" ADMIN_KICK )
    
    
    
menu_setpropg_AdminMenu MPROP_EXITNAME "Выход" )

    
menu_setpropg_AdminMenu MPROP_EXIT MEXIT_ALL )

    
menu_displayid g_AdminMenu )    
}

public 
weapon_menu_vip_Handlerid pMenupItem )
{
    if ( 
pItem == MENU_EXIT || ~get_user_flagsid ) & ADMIN_KICK)
    {
        
menu_destroypMenu )
        return 
PLUGIN_HANDLED;
    }

    new 
pData], pName64 ], pAccesspCallback

    menu_item_getinfo
pMenu pItem pAccess pData charsmaxpData ) , pName charsmaxpName ) , pCallback )

    new 
pKey str_to_numpData )

    switch( 
pKey )
    {
    case 
1:
        {            
            if(
g_menuBlockWeapon2id ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                
weapon_menu_vipid 
                return 
PLUGIN_HANDLED
            
}
            
            
give_b1(id)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Balrog]!y!" )
            
g_menuBlockWeapon2id ]++
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    case 
2:
        {            
            if(
g_menuBlockWeapon2id ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                
weapon_menu_vipid 
                return 
PLUGIN_HANDLED
            
}
            
            
give_weapon_k1ases(id)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[K1ases]!y!" )
            
g_menuBlockWeapon2id ]++
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    case 
3:
        {            
            if(
g_menuBlockWeapon2id ] >= 1)
            {
                
PrintChatColorid ,  "!g[ZP] !yВы уже брали оружие в этом раунде!" )
                
weapon_menu_vipid 
                return 
PLUGIN_HANDLED
            
}
            
            
give_dual_uzi(id)
            
PrintChatColorid ,  "!g[ZP] !yТы взял !g[Dual_uzi]!y!" )
            
g_menuBlockWeapon2id ]++
            
menu_destroypMenu )
            return 
PLUGIN_HANDLED
        
}
    
        
    }

    
menu_destroypMenu )
    return 
PLUGIN_HANDLED
}

stock PrintChatColor( const id , const input[], any:...) 
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4" // Green Color
    
replace_all(msg190"!y""^1" // Default Color
    
replace_all(msg190"!team""^3" // Team Color
    
    
if (idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++) 
        {
            if (
is_user_connected(players[i])) 
            {
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText" ), _players[i])
                
write_byte(players[i]);
                
write_string(msg);
                
message_end();
            }
        }
    }
}  

В строчке #define HP1 поставь выдаваемое значение здоровья
Разработка сбалансированного Zombie+Cso
Разработчик: NoPM_N1Ck
Готовность: 90%
Аватара пользователя
NoPM_N1Ck
 
Сообщения: 57
Зарегистрирован: 06 июл 2018, 18:56
Откуда: Русь
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.
Опыт программирования: Около года
Языки программирования: Pawn(amxx)
Pascal
Javascript
Изучаю C, C++


Вернуться в Вопросы по AMXX и его плагинам

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11