Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

Сделать так чтобы вип меню открывалось при начале раунда

, Нужна помощь!
Статус пользователя mihac23
сообщение 23.6.2017, 9:58
Сообщение #1
Стаж: 8 лет 10 месяцев

Сообщений: 2
Благодарностей: 1
Полезность: 0

Помогите пожалуйста, нужно так чтобы когда начинался раунд вип меню автоматически открывалось вот код!
Код
#include < amxmodx >
#include < cstrike >
#include < fun >

#define PLUGIN_NAME "Vip system"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "mihac23

#define PLUGIN_LEVEL ADMIN_LEVEL_H

#define PRIMARY_WEAPONS_BITSUM ((1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90))
#define SECONDARY_WEAPONS_BITSUM ((1<<CSW_DEAGLE)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_ELITE))

#pragma tabsize 0

new const mPrefix[] = "\d[VIP]^n\r"

new gMsg1
new UserFunc[ 33 ][ 64 ]

public plugin_init( )
{
    register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR )
    
    register_event( "ResetHUD", "ResetHUD", "be" )
    register_event( "Damage", "EventDamage", "b", "2!0", "3=0", "4!0" )
    register_message( get_user_msgid( "SayText" ), "ShowPrefix" )
    
    register_clcmd( "vipmenu", "vip_menu" )
    register_clcmd( "say /vipmenu", "vip_menu" )
    register_clcmd( "say_team /vipmenu", "vip_menu" )
    
    gMsg1 = CreateHudSyncObj()
    
    register_dictionary("vsystem.txt")
}

public client_putinserver( id )
{
    if ( get_user_flags( id ) & PLUGIN_LEVEL )
    {
        UserFunc[ id ][ 1 ] = true
        UserFunc[ id ][ 2 ] = true
        UserFunc[ id ][ 3 ] = true
        UserFunc[ id ][ 4 ] = true
    }
}

public ResetHUD( id )
{
    set_task( 0.5, "VIP", id + 6910 )
}

public ShowPrefix( msgId, msgDest, msgEnt )
{
    new id = get_msg_arg_int( 1 )
    
    if ( UserFunc[ id ][ 4 ] )
    {
        new szTmp[ 256 ], szTmp2[ 256 ]
        get_msg_arg_string( 2, szTmp, charsmax( szTmp ) )
        if( !equal( szTmp, "#Cstrike_Chat_All" ) )
        {
            add( szTmp2,charsmax( szTmp2 ), "^x04[VIP]" )
            add( szTmp2,charsmax( szTmp2 ), " " )
            add( szTmp2,charsmax( szTmp2 ), szTmp )
        } else {
            add( szTmp2, charsmax( szTmp2 ), "^x04[VIP]" )
            add( szTmp2, charsmax( szTmp2 ), "^x03 %s1^x01 : ^x04%s2" )
        }
        
        set_msg_arg_string( 2, szTmp2 )
    } else {
        new szTmp[ 256 ], szTmp2[ 256 ]
        get_msg_arg_string( 2, szTmp, charsmax( szTmp ) )
        if( !equal( szTmp, "#Cstrike_Chat_All" ) )
        {
            add( szTmp2,charsmax( szTmp2 ), " " )
            add( szTmp2,charsmax( szTmp2 ), szTmp )
        } else {
            add( szTmp2, charsmax( szTmp2 ), "^x03 %s1^x01 : ^x01%s2" )
        }
        
        set_msg_arg_string( 2, szTmp2 )
    }
    
    return PLUGIN_CONTINUE
}

public VIP( TaskID )
{
    new id = TaskID - 6910
    
    if ( UserFunc[ id ][ 3 ] )
    {
        message_begin( MSG_ALL, get_user_msgid( "ScoreAttrib" ) )
        write_byte( id )
        write_byte( 4 )
        message_end( )
    }
    
    return PLUGIN_HANDLED
}

public EventDamage( id )
{
    if ( !is_user_alive( id ) )
        return PLUGIN_HANDLED
        
    static attacker; attacker = get_user_attacker( id )
    static damage; damage = read_data( 2 )
    
    if ( UserFunc[ attacker ][ 2 ] )
    {
        if ( get_user_health(attacker) <= 100 )
        {
            set_user_health( attacker, get_user_health( attacker ) + damage )
        }
    }
    
    set_hudmessage( random_num( 1, 255 ), random_num( 1, 255 ), random_num( 1, 255 ), 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1 )
    
    if ( UserFunc[ attacker ][ 1 ] )
    {
        ShowSyncHudMsg( attacker, gMsg1, "%i^n", damage )
    }
    
    return PLUGIN_CONTINUE
}

public vip_menu( id )
{
    if ( !( get_user_flags( id ) & PLUGIN_LEVEL ) )
        return PLUGIN_HANDLED
    
    static s_MenuItem[ 255 ], s_Item[ 255 ], s_OItem[ 255 ], g_Temp[ 10 ], s_sName[ 255 ]
    formatex( s_MenuItem, charsmax( s_MenuItem ), "%s%L", mPrefix, LANG_PLAYER, "MENU_HINT1" )
    
    new menu = menu_create( s_MenuItem, "vm_hand" )
    
    for ( new i = 1; i < 3; i++ )
    {
        formatex( s_OItem[ i ], charsmax( s_OItem ), "MENU_ITEM%d", i )
        formatex( s_Item[ i ], charsmax( s_Item ), "\y%L", LANG_PLAYER, s_OItem[ i ] )
        
        num_to_str( i, g_Temp, charsmax( g_Temp ) )
        menu_additem( menu, s_Item[ i ], g_Temp, 0 )
    }
    
    formatex( s_sName[ 1 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_BACK" )
    formatex( s_sName[ 2 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_NEXT" )
    formatex( s_sName[ 3 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_EXIT" )
    
    menu_setprop( menu, MPROP_BACKNAME, s_sName[ 1 ] )
    menu_setprop( menu, MPROP_NEXTNAME, s_sName[ 2 ] )
    menu_setprop( menu, MPROP_EXITNAME, s_sName[ 3 ] )

    menu_display( id, menu, 0 )
    return PLUGIN_HANDLED
}

public vm_hand( id, menu, item )
{
    if( item == MENU_EXIT )
    {
        menu_destroy( menu )
        return PLUGIN_HANDLED
    }

    new data[ 6 ], iName[ 64 ], access, callback
    menu_item_getinfo( menu, item, access, data, 5, iName, 63, callback )

    new key = str_to_num( data )
    
    switch( key )
    {
    case 1:{
                munitions_menu( id )
            }
    case 2:{
                options_menu( id )
            }
    }
    
    return PLUGIN_HANDLED
}

public munitions_menu( id )
{
    static s_MenuItem[ 255 ], s_Item[ 255 ], s_OItem[ 255 ], g_Temp[ 10 ], s_sName[ 255 ]
    formatex( s_MenuItem, charsmax( s_MenuItem ), "%s%L", mPrefix, LANG_PLAYER, "MENU2_HINT1" )
    
    new menu = menu_create( s_MenuItem, "mt_hand" )
    
    for ( new i = 1; i < 5; i++ )
    {
        formatex( s_OItem[ i ], charsmax( s_OItem ), "MENU2_ITEM%d", i )
        formatex( s_Item[ i ], charsmax( s_Item ), "\y%L", LANG_PLAYER, s_OItem[ i ] )
        
        num_to_str( i, g_Temp, charsmax( g_Temp ) )
        menu_additem( menu, s_Item[ i ], g_Temp, 0 )
    }
    
    formatex( s_sName[ 3 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_BACK" )
    
    menu_setprop( menu, MPROP_EXITNAME, s_sName[ 3 ] )

    menu_display( id, menu, 0 )
    return PLUGIN_HANDLED
}

public mt_hand( id, menu, item )
{
    if( item == MENU_EXIT )
    {
        menu_destroy( menu )
        vip_menu( id )
        return PLUGIN_HANDLED
    }

    new data[ 6 ], iName[ 64 ], access, callback
    menu_item_getinfo( menu, item, access, data, 5, iName, 63, callback )

    new key = str_to_num( data )
    
    give_weapon( id, key )
    
    return PLUGIN_HANDLED
}

public options_menu( id )
{
    static s_MenuItem[ 255 ], s_Item[ 255 ], s_OItem[ 255 ], g_Temp[ 10 ], s_sName[ 255 ], s_On[ 128 ], s_Off[ 128 ]
    formatex( s_MenuItem, charsmax( s_MenuItem ), "%s%L", mPrefix, LANG_PLAYER, "MENU3_HINT1" )
    
    new menu = menu_create( s_MenuItem, "opt_hand" )
    
    formatex( s_On, charsmax( s_On ), "%L", LANG_PLAYER, "NAME_ON" )
    formatex( s_Off, charsmax( s_Off ), "%L", LANG_PLAYER, "NAME_OFF" )
    
    for ( new i = 1; i < 5; i++ )
    {
        formatex( s_OItem[ i ], charsmax( s_OItem ), "MENU3_ITEM%d", i )
        formatex( s_Item[ i ], charsmax( s_Item ), "\y%L \d[%s]", LANG_PLAYER, s_OItem[ i ], UserFunc[ id ][ i ] ? s_On : s_Off )
        
        num_to_str( i, g_Temp, charsmax( g_Temp ) )
        menu_additem( menu, s_Item[ i ], g_Temp, 0 )
    }
    
    formatex( s_sName[ 3 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_BACK" )
    
    menu_setprop( menu, MPROP_EXITNAME, s_sName[ 3 ] )

    menu_display( id, menu, 0 )
    return PLUGIN_HANDLED
}

public opt_hand( id, menu, item )
{
    if( item == MENU_EXIT )
    {
        menu_destroy( menu )
        vip_menu( id )
        return PLUGIN_HANDLED
    }

    new data[ 6 ], iName[ 64 ], access, callback
    menu_item_getinfo( menu, item, access, data, 5, iName, 63, callback )

    new key = str_to_num( data )
    
    if ( UserFunc[ id ][ key ] )
    {
        UserFunc[ id ][ key ] = false
    } else {
        UserFunc[ id ][ key ] = true
    }
    
    options_menu( id )
    
    return PLUGIN_HANDLED
}

public give_weapon( id, num )
{
    switch( num )
    {
    case 1:{
                drop_primary( id )
                drop_secondary( id )
                give_item( id, "weapon_ak47" )
                give_item( id, "weapon_deagle" )
                give_item( id, "weapon_hegrenade" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_smokegrenade" )
                give_item( id, "item_assaultsuit" )
                give_item( id, "item_thighpack" )
                cs_set_user_bpammo( id, CSW_AK47, 90 )
                cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
            }
    case 2:{
                drop_primary( id )
                drop_secondary( id )
                give_item( id, "weapon_m4a1" )
                give_item( id, "weapon_deagle" )
                give_item( id, "weapon_hegrenade" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_smokegrenade" )
                give_item( id, "item_assaultsuit" )
                give_item( id, "item_thighpack" )
                cs_set_user_bpammo( id, CSW_M4A1, 90 )
                cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
            }
    case 3:{
                drop_primary( id )
                drop_secondary( id )
                give_item( id, "weapon_awp" )
                give_item( id, "weapon_deagle" )
                give_item( id, "weapon_hegrenade" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_smokegrenade" )
                give_item( id, "item_assaultsuit" )
                give_item( id, "item_thighpack" )
                cs_set_user_bpammo( id, CSW_AWP, 90 )
                cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
            }
    case 4:{
                drop_primary( id )
                drop_secondary( id )
                give_item( id, "weapon_famas" )
                give_item( id, "weapon_deagle" )
                give_item( id, "weapon_hegrenade" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_flashbang" )
                give_item( id, "weapon_smokegrenade" )
                give_item( id, "item_assaultsuit" )
                give_item( id, "item_thighpack" )
                cs_set_user_bpammo( id, CSW_FAMAS, 90 )
                cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
            }
    }
}

stock drop_secondary( id )
{
    new weapons[ 32 ], num
    get_user_weapons( id, weapons, num )
    for( new i = 0; i < num; i++ )
    {
        if ( SECONDARY_WEAPONS_BITSUM & ( 1<<weapons[ i ] ) )
        {
            static wname[ 32 ]
            get_weaponname( weapons[ i ], wname, sizeof wname - 1 )
            engclient_cmd( id, "drop", wname )
        }
    }
}

stock drop_primary( id )
{
    new weapons[ 32 ], num
    get_user_weapons( id, weapons, num )
    for( new i = 0; i < num; i++ )
    {
        if ( PRIMARY_WEAPONS_BITSUM & ( 1<<weapons[ i ] ) )
        {
            static wname[ 32 ]
            get_weaponname( weapons[ i ], wname, sizeof wname - 1 )
            engclient_cmd( id, "drop", wname )
        }
    }
}

stock ShowMsg( const id, const input[], any:... )
{
    new count = 1, players[ 32 ]
    static msg[ 188 ]
    vformat( msg, 187, input, 3 )
    
    replace_all( msg, 187, "!g", "^4" )
    replace_all( msg, 187, "!y", "^1" )
    replace_all( msg, 187, "!t", "^3" )
    
    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( )
            }
        }
    }
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Maloi
сообщение 29.7.2017, 11:04
Сообщение #2
Стаж: 11 лет

Сообщений: 6
Благодарностей: 1
Полезность: 0

mihac23,
#include < amxmodx >
#include < cstrike >
#include < fun >

#define PLUGIN_NAME "Vip system"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "mihac23

#define PLUGIN_LEVEL ADMIN_LEVEL_H

#define PRIMARY_WEAPONS_BITSUM ((1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90))
#define SECONDARY_WEAPONS_BITSUM ((1<<CSW_DEAGLE)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_ELITE))

#pragma tabsize 0

new const mPrefix[] = "\d[VIP]^n\r"

new gMsg1
new UserFunc[ 33 ][ 64 ]

public plugin_init( )
{
register_event( "ResetHUD", "ResetHUD", "be" )
register_event( "Damage", "EventDamage", "b", "2!0", "3=0", "4!0" )
register_message( get_user_msgid( "SayText" ), "ShowPrefix" )

register_logevent("vip_menu",2,"1=Round_Start")
register_clcmd( "vipmenu", "vip_menu" )

gMsg1 = CreateHudSyncObj()

register_dictionary("vsystem.txt")
}

public client_putinserver( id )
{
if ( get_user_flags( id ) & PLUGIN_LEVEL )
{
UserFunc[ id ][ 1 ] = true
UserFunc[ id ][ 2 ] = true
UserFunc[ id ][ 3 ] = true
UserFunc[ id ][ 4 ] = true
}
}

public ResetHUD( id )
{
set_task( 0.5, "VIP", id + 6910 )
}

public ShowPrefix( msgId, msgDest, msgEnt )
{
new id = get_msg_arg_int( 1 )

if ( UserFunc[ id ][ 4 ] )
{
new szTmp[ 256 ], szTmp2[ 256 ]
get_msg_arg_string( 2, szTmp, charsmax( szTmp ) )
if( !equal( szTmp, "#Cstrike_Chat_All" ) )
{
add( szTmp2,charsmax( szTmp2 ), "^x04[VIP]" )
add( szTmp2,charsmax( szTmp2 ), " " )
add( szTmp2,charsmax( szTmp2 ), szTmp )
} else {
add( szTmp2, charsmax( szTmp2 ), "^x04[VIP]" )
add( szTmp2, charsmax( szTmp2 ), "^x03 %s1^x01 : ^x04%s2" )
}

set_msg_arg_string( 2, szTmp2 )
} else {
new szTmp[ 256 ], szTmp2[ 256 ]
get_msg_arg_string( 2, szTmp, charsmax( szTmp ) )
if( !equal( szTmp, "#Cstrike_Chat_All" ) )
{
add( szTmp2,charsmax( szTmp2 ), " " )
add( szTmp2,charsmax( szTmp2 ), szTmp )
} else {
add( szTmp2, charsmax( szTmp2 ), "^x03 %s1^x01 : ^x01%s2" )
}

set_msg_arg_string( 2, szTmp2 )
}

return PLUGIN_CONTINUE
}

public VIP( TaskID )
{
new id = TaskID - 6910

if ( UserFunc[ id ][ 3 ] )
{
message_begin( MSG_ALL, get_user_msgid( "ScoreAttrib" ) )
write_byte( id )
write_byte( 4 )
message_end( )
}

return PLUGIN_HANDLED
}

public EventDamage( id )
{
if ( !is_user_alive( id ) )
return PLUGIN_HANDLED

static attacker; attacker = get_user_attacker( id )
static damage; damage = read_data( 2 )

if ( UserFunc[ attacker ][ 2 ] )
{
if ( get_user_health(attacker) <= 100 )
{
set_user_health( attacker, get_user_health( attacker ) + damage )
}
}

set_hudmessage( random_num( 1, 255 ), random_num( 1, 255 ), random_num( 1, 255 ), 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1 )

if ( UserFunc[ attacker ][ 1 ] )
{
ShowSyncHudMsg( attacker, gMsg1, "%i^n", damage )
}

return PLUGIN_CONTINUE
}

public vip_menu( id )
{
if ( !( get_user_flags( id ) & PLUGIN_LEVEL ) )
return PLUGIN_HANDLED

static s_MenuItem[ 255 ], s_Item[ 255 ], s_OItem[ 255 ], g_Temp[ 10 ], s_sName[ 255 ]
formatex( s_MenuItem, charsmax( s_MenuItem ), "%s%L", mPrefix, LANG_PLAYER, "MENU_HINT1" )

new menu = menu_create( s_MenuItem, "vm_hand" )

for ( new i = 1; i < 3; i++ )
{
formatex( s_OItem[ i ], charsmax( s_OItem ), "MENU_ITEM%d", i )
formatex( s_Item[ i ], charsmax( s_Item ), "\y%L", LANG_PLAYER, s_OItem[ i ] )

num_to_str( i, g_Temp, charsmax( g_Temp ) )
menu_additem( menu, s_Item[ i ], g_Temp, 0 )
}

formatex( s_sName[ 1 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_BACK" )
formatex( s_sName[ 2 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_NEXT" )
formatex( s_sName[ 3 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_EXIT" )

menu_setprop( menu, MPROP_BACKNAME, s_sName[ 1 ] )
menu_setprop( menu, MPROP_NEXTNAME, s_sName[ 2 ] )
menu_setprop( menu, MPROP_EXITNAME, s_sName[ 3 ] )

menu_display( id, menu, 0 )
return PLUGIN_HANDLED
}

public vm_hand( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu )
return PLUGIN_HANDLED
}

new data[ 6 ], iName[ 64 ], access, callback
menu_item_getinfo( menu, item, access, data, 5, iName, 63, callback )

new key = str_to_num( data )

switch( key )
{
case 1:{
munitions_menu( id )
}
case 2:{
options_menu( id )
}
}

return PLUGIN_HANDLED
}

public munitions_menu( id )
{
static s_MenuItem[ 255 ], s_Item[ 255 ], s_OItem[ 255 ], g_Temp[ 10 ], s_sName[ 255 ]
formatex( s_MenuItem, charsmax( s_MenuItem ), "%s%L", mPrefix, LANG_PLAYER, "MENU2_HINT1" )

new menu = menu_create( s_MenuItem, "mt_hand" )

for ( new i = 1; i < 5; i++ )
{
formatex( s_OItem[ i ], charsmax( s_OItem ), "MENU2_ITEM%d", i )
formatex( s_Item[ i ], charsmax( s_Item ), "\y%L", LANG_PLAYER, s_OItem[ i ] )

num_to_str( i, g_Temp, charsmax( g_Temp ) )
menu_additem( menu, s_Item[ i ], g_Temp, 0 )
}

formatex( s_sName[ 3 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_BACK" )

menu_setprop( menu, MPROP_EXITNAME, s_sName[ 3 ] )

menu_display( id, menu, 0 )
return PLUGIN_HANDLED
}

public mt_hand( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu )
vip_menu( id )
return PLUGIN_HANDLED
}

new data[ 6 ], iName[ 64 ], access, callback
menu_item_getinfo( menu, item, access, data, 5, iName, 63, callback )

new key = str_to_num( data )

give_weapon( id, key )

return PLUGIN_HANDLED
}

public options_menu( id )
{
static s_MenuItem[ 255 ], s_Item[ 255 ], s_OItem[ 255 ], g_Temp[ 10 ], s_sName[ 255 ], s_On[ 128 ], s_Off[ 128 ]
formatex( s_MenuItem, charsmax( s_MenuItem ), "%s%L", mPrefix, LANG_PLAYER, "MENU3_HINT1" )

new menu = menu_create( s_MenuItem, "opt_hand" )

formatex( s_On, charsmax( s_On ), "%L", LANG_PLAYER, "NAME_ON" )
formatex( s_Off, charsmax( s_Off ), "%L", LANG_PLAYER, "NAME_OFF" )

for ( new i = 1; i < 5; i++ )
{
formatex( s_OItem[ i ], charsmax( s_OItem ), "MENU3_ITEM%d", i )
formatex( s_Item[ i ], charsmax( s_Item ), "\y%L \d[%s]", LANG_PLAYER, s_OItem[ i ], UserFunc[ id ][ i ] ? s_On : s_Off )

num_to_str( i, g_Temp, charsmax( g_Temp ) )
menu_additem( menu, s_Item[ i ], g_Temp, 0 )
}

formatex( s_sName[ 3 ], charsmax( s_sName ), "%L", LANG_PLAYER, "NAME_BACK" )

menu_setprop( menu, MPROP_EXITNAME, s_sName[ 3 ] )

menu_display( id, menu, 0 )
return PLUGIN_HANDLED
}

public opt_hand( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu )
vip_menu( id )
return PLUGIN_HANDLED
}

new data[ 6 ], iName[ 64 ], access, callback
menu_item_getinfo( menu, item, access, data, 5, iName, 63, callback )

new key = str_to_num( data )

if ( UserFunc[ id ][ key ] )
{
UserFunc[ id ][ key ] = false
} else {
UserFunc[ id ][ key ] = true
}

options_menu( id )

return PLUGIN_HANDLED
}

public give_weapon( id, num )
{
switch( num )
{
case 1:{
drop_primary( id )
drop_secondary( id )
give_item( id, "weapon_ak47" )
give_item( id, "weapon_deagle" )
give_item( id, "weapon_hegrenade" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_smokegrenade" )
give_item( id, "item_assaultsuit" )
give_item( id, "item_thighpack" )
cs_set_user_bpammo( id, CSW_AK47, 90 )
cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
}
case 2:{
drop_primary( id )
drop_secondary( id )
give_item( id, "weapon_m4a1" )
give_item( id, "weapon_deagle" )
give_item( id, "weapon_hegrenade" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_smokegrenade" )
give_item( id, "item_assaultsuit" )
give_item( id, "item_thighpack" )
cs_set_user_bpammo( id, CSW_M4A1, 90 )
cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
}
case 3:{
drop_primary( id )
drop_secondary( id )
give_item( id, "weapon_awp" )
give_item( id, "weapon_deagle" )
give_item( id, "weapon_hegrenade" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_smokegrenade" )
give_item( id, "item_assaultsuit" )
give_item( id, "item_thighpack" )
cs_set_user_bpammo( id, CSW_AWP, 90 )
cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
}
case 4:{
drop_primary( id )
drop_secondary( id )
give_item( id, "weapon_famas" )
give_item( id, "weapon_deagle" )
give_item( id, "weapon_hegrenade" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_flashbang" )
give_item( id, "weapon_smokegrenade" )
give_item( id, "item_assaultsuit" )
give_item( id, "item_thighpack" )
cs_set_user_bpammo( id, CSW_FAMAS, 90 )
cs_set_user_bpammo( id, CSW_DEAGLE, 35 )
}
}
}

stock drop_secondary( id )
{
new weapons[ 32 ], num
get_user_weapons( id, weapons, num )
for( new i = 0; i < num; i++ )
{
if ( SECONDARY_WEAPONS_BITSUM & ( 1<<weapons[ i ] ) )
{
static wname[ 32 ]
get_weaponname( weapons[ i ], wname, sizeof wname - 1 )
engclient_cmd( id, "drop", wname )
}
}
}

stock drop_primary( id )
{
new weapons[ 32 ], num
get_user_weapons( id, weapons, num )
for( new i = 0; i < num; i++ )
{
if ( PRIMARY_WEAPONS_BITSUM & ( 1<<weapons[ i ] ) )
{
static wname[ 32 ]
get_weaponname( weapons[ i ], wname, sizeof wname - 1 )
engclient_cmd( id, "drop", wname )
}
}
}

stock ShowMsg( const id, const input[], any:... )
{
new count = 1, players[ 32 ]
static msg[ 188 ]
vformat( msg, 187, input, 3 )

replace_all( msg, 187, "!g", "^4" )
replace_all( msg, 187, "!y", "^1" )
replace_all( msg, 187, "!t", "^3" )

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( )
}
}
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: