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

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

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

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

Ограничение на использование випменю

Статус пользователя Rosh
сообщение 22.12.2014, 15:25
Сообщение #1
Стаж: 11 лет

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

Помогите убрать ограничение на использование за 1 раунд
Код:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <hamsandwich>

#pragma tabsize 0

#define PLUGIN "VipMenu"
#define VERSION "1.0"
#define AUTHOR "NoNe"

#define ADMIN_VIP ADMIN_RESERVATION

#define SCOREATTRIB_NONE 0
#define SCOREATTRIB_DEAD ( 1 << 0 )
#define SCOREATTRIB_BOMB ( 1 << 1 )
#define SCOREATTRIB_VIP ( 1 << 2 )

new bool:has_used[33]

public plugin_init()
{
register_clcmd( "vipmenu", "VIPMenu" );
register_clcmd( "say /vipmenu", "VIPMenu" );
register_clcmd( "say_team /vipmenu", "VIPMenu" );
register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );

register_logevent("event_new_round", 2, "1=Round_Start")
}

public VIPMenu( id )
{
if(!has_used[id])
{
if(get_user_flags(id) & ADMIN_VIP)

{
new vip_menu = menu_create( "\wVip меню:", "menu_handler" );
menu_additem( vip_menu, "\wНизкая гравитация", "1", 0);
menu_additem( vip_menu, "\wСвечение", "2", 0);
menu_additem( vip_menu, "\wСкорость", "3", 0);
menu_additem( vip_menu, "\w200 HP и 200 Брони", "4", 0);
menu_additem( vip_menu, "\wБесшумные шаги", "5", 0);

menu_setprop(vip_menu, MPROP_EXITNAME, "\yВыход")
menu_display( id, vip_menu, 0 );
}
else
{
client_print(id, print_chat, "[ВИП] Для начала купите [ВИП]")
}
}
}

public menu_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;

menu_item_getinfo( menu, item, access, data,5, iName, 63, callback );
new key = str_to_num( data );
switch( key )
{
case 1:
{
if( is_user_alive( id ) )
{
set_user_gravity( id, 0.5 );
}
}
case 2:
{
if(is_user_alive(id))
{
set_user_rendering(id, kRenderFxGlowShell, random_num(100, 255), random_num(100, 255), random_num(100, 255), kRenderNormal, 25);
}
}
case 3:
{
set_user_maxspeed(id, 370.0);
{

}
}
case 4:
{
if( is_user_alive( id ) )
{
set_user_health( id, 200 );
set_user_armor(id, 200);
}
}
case 5:
{
if( is_user_alive( id ) )
{
set_user_footsteps(id, 0);
}
}

}

has_used[id] = true;
menu_destroy( menu );
return PLUGIN_HANDLED;
}


public event_new_round()
arrayset(has_used, false, 33)

public handle_say(id) {
new said[192]
read_args(said,192)
return PLUGIN_CONTINUE
}

public MessageScoreAttrib( iMsgID, iDest, iReceiver ) {
new iPlayer = get_msg_arg_int( 1 );
if( is_user_connected( iPlayer )
&& ( get_user_flags( iPlayer ) & ADMIN_VIP ) ) {
set_msg_arg_int( 2, ARG_BYTE, is_user_alive( iPlayer ) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD );
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
OverGame
сообщение 22.12.2014, 15:27
Сообщение #2
Стаж: 11 лет

Сообщений: 384
Благодарностей: 217
Полезность: 348

Цитата(Rosh @ 22.12.2014, 15:21) *
Помогите убрать ограничение на использование за 1 раунд
Код:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <hamsandwich>

#pragma tabsize 0

#define PLUGIN "VipMenu"
#define VERSION "1.0"
#define AUTHOR "NoNe"

#define ADMIN_VIP ADMIN_RESERVATION

#define SCOREATTRIB_NONE 0
#define SCOREATTRIB_DEAD ( 1 << 0 )
#define SCOREATTRIB_BOMB ( 1 << 1 )
#define SCOREATTRIB_VIP ( 1 << 2 )

new bool:has_used[33]

public plugin_init()
{
register_clcmd( "vipmenu", "VIPMenu" );
register_clcmd( "say /vipmenu", "VIPMenu" );
register_clcmd( "say_team /vipmenu", "VIPMenu" );
register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );

register_logevent("event_new_round", 2, "1=Round_Start")
}

public VIPMenu( id )
{
if(!has_used[id])
{
if(get_user_flags(id) & ADMIN_VIP)

{
new vip_menu = menu_create( "\wVip меню:", "menu_handler" );
menu_additem( vip_menu, "\wНизкая гравитация", "1", 0);
menu_additem( vip_menu, "\wСвечение", "2", 0);
menu_additem( vip_menu, "\wСкорость", "3", 0);
menu_additem( vip_menu, "\w200 HP и 200 Брони", "4", 0);
menu_additem( vip_menu, "\wБесшумные шаги", "5", 0);

menu_setprop(vip_menu, MPROP_EXITNAME, "\yВыход")
menu_display( id, vip_menu, 0 );
}
else
{
client_print(id, print_chat, "[ВИП] Для начала купите [ВИП]")
}
}
}

public menu_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;

menu_item_getinfo( menu, item, access, data,5, iName, 63, callback );
new key = str_to_num( data );
switch( key )
{
case 1:
{
if( is_user_alive( id ) )
{
set_user_gravity( id, 0.5 );
}
}
case 2:
{
if(is_user_alive(id))
{
set_user_rendering(id, kRenderFxGlowShell, random_num(100, 255), random_num(100, 255), random_num(100, 255), kRenderNormal, 25);
}
}
case 3:
{
set_user_maxspeed(id, 370.0);
{

}
}
case 4:
{
if( is_user_alive( id ) )
{
set_user_health( id, 200 );
set_user_armor(id, 200);
}
}
case 5:
{
if( is_user_alive( id ) )
{
set_user_footsteps(id, 0);
}
}

}

has_used[id] = true;
menu_destroy( menu );
return PLUGIN_HANDLED;
}


public event_new_round()
arrayset(has_used, false, 33)

public handle_say(id) {
new said[192]
read_args(said,192)
return PLUGIN_CONTINUE
}

public MessageScoreAttrib( iMsgID, iDest, iReceiver ) {
new iPlayer = get_msg_arg_int( 1 );
if( is_user_connected( iPlayer )
&& ( get_user_flags( iPlayer ) & ADMIN_VIP ) ) {
set_msg_arg_int( 2, ARG_BYTE, is_user_alive( iPlayer ) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD );
}
}






Код:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <hamsandwich>

#pragma tabsize 0

#define PLUGIN "VipMenu"
#define VERSION "1.0"
#define AUTHOR "NoNe"

#define ADMIN_VIP ADMIN_RESERVATION

#define SCOREATTRIB_NONE 0
#define SCOREATTRIB_DEAD ( 1 << 0 )
#define SCOREATTRIB_BOMB ( 1 << 1 )
#define SCOREATTRIB_VIP ( 1 << 2 )

new bool:has_used[33]

public plugin_init()
{
register_clcmd( "vipmenu", "VIPMenu" );
register_clcmd( "say /vipmenu", "VIPMenu" );
register_clcmd( "say_team /vipmenu", "VIPMenu" );
register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
}

public VIPMenu( id )
{
if(!has_used[id])
{
if(get_user_flags(id) & ADMIN_VIP)

{
new vip_menu = menu_create( "\wVip меню:", "menu_handler" );
menu_additem( vip_menu, "\wНизкая гравитация", "1", 0);
menu_additem( vip_menu, "\wСвечение", "2", 0);
menu_additem( vip_menu, "\wСкорость", "3", 0);
menu_additem( vip_menu, "\w200 HP и 200 Брони", "4", 0);
menu_additem( vip_menu, "\wБесшумные шаги", "5", 0);

menu_setprop(vip_menu, MPROP_EXITNAME, "\yВыход")
menu_display( id, vip_menu, 0 );
}
else
{
client_print(id, print_chat, "[ВИП] Для начала купите [ВИП]")
}
}
}

public menu_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;

menu_item_getinfo( menu, item, access, data,5, iName, 63, callback );
new key = str_to_num( data );
switch( key )
{
case 1:
{
if( is_user_alive( id ) )
{
set_user_gravity( id, 0.5 );
}
}
case 2:
{
if(is_user_alive(id))
{
set_user_rendering(id, kRenderFxGlowShell, random_num(100, 255), random_num(100, 255), random_num(100, 255), kRenderNormal, 25);
}
}
case 3:
{
set_user_maxspeed(id, 370.0);
{

}
}
case 4:
{
if( is_user_alive( id ) )
{
set_user_health( id, 200 );
set_user_armor(id, 200);
}
}
case 5:
{
if( is_user_alive( id ) )
{
set_user_footsteps(id, 0);
}
}

}

has_used[id] = true;
menu_destroy( menu );
return PLUGIN_HANDLED;
}

public handle_say(id) {
new said[192]
read_args(said,192)
return PLUGIN_CONTINUE
}

public MessageScoreAttrib( iMsgID, iDest, iReceiver ) {
new iPlayer = get_msg_arg_int( 1 );
if( is_user_connected( iPlayer )
&& ( get_user_flags( iPlayer ) & ADMIN_VIP ) ) {
set_msg_arg_int( 2, ARG_BYTE, is_user_alive( iPlayer ) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD );
}
}




Советую вот так :

Код:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <hamsandwich>

#pragma tabsize 0

#define PLUGIN "VipMenu"
#define VERSION "1.0"
#define AUTHOR "NoNe"

#define ADMIN_VIP ADMIN_RESERVATION

#define SCOREATTRIB_NONE 0
#define SCOREATTRIB_DEAD ( 1 << 0 )
#define SCOREATTRIB_BOMB ( 1 << 1 )
#define SCOREATTRIB_VIP ( 1 << 2 )

public plugin_init()
{
register_clcmd( "vipmenu", "VIPMenu" );
register_clcmd( "say /vipmenu", "VIPMenu" );
register_clcmd( "say_team /vipmenu", "VIPMenu" );
register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
}

public VIPMenu( id )
{
if ( get_user_flags ( id ) & ADMIN_VIP )
client_print(id, print_chat, "[ВИП] Для начала купите [ВИП]")
return PLUGIN_HANDLED

new vip_menu = menu_create( "\wVip меню:", "menu_handler" )'
menu_additem( vip_menu, "\wНизкая гравитация", "1", 0);
menu_additem( vip_menu, "\wСвечение", "2", 0);
menu_additem( vip_menu, "\wСкорость", "3", 0);
menu_additem( vip_menu, "\w200 HP и 200 Брони", "4", 0);
menu_additem( vip_menu, "\wБесшумные шаги", "5", 0);

menu_setprop(vip_menu, MPROP_EXITNAME, "\yВыход")
menu_display( id, vip_menu, 0 );
}

public menu_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;

menu_item_getinfo( menu, item, access, data,5, iName, 63, callback );
new key = str_to_num( data );
switch( key )
{
case 1:
{
if( is_user_alive( id ) )
{
set_user_gravity( id, 0.5 );
}
}
case 2:
{
if(is_user_alive(id))
{
set_user_rendering(id, kRenderFxGlowShell, random_num(100, 255), random_num(100, 255), random_num(100, 255), kRenderNormal, 25);
}
}
case 3:
{
set_user_maxspeed(id, 370.0);
}
case 4:
{
if( is_user_alive( id ) )
{
set_user_health( id, 200 );
set_user_armor(id, 200);
}
}
case 5:
{
if( is_user_alive( id ) )
{
set_user_footsteps(id, 0);
}
}

}

menu_destroy( menu );
return PLUGIN_HANDLED;
}

public handle_say(id) {
new said[192]
read_args(said,192)
return PLUGIN_CONTINUE
}

public MessageScoreAttrib( iMsgID, iDest, iReceiver ) {
new iPlayer = get_msg_arg_int( 1 );
if( is_user_connected( iPlayer )
&& ( get_user_flags( iPlayer ) & ADMIN_VIP ) ) {
set_msg_arg_int( 2, ARG_BYTE, is_user_alive( iPlayer ) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD );
}
}


мб, что забыл дополнить или тд сам разберешься

Отредактировал: OverGame, - 22.12.2014, 15:32
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 22.12.2014, 15:28
Сообщение #3


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

замени
Код:
public VIPMenu( id ) 
{
if(get_user_flags(id) & ADMIN_VIP)
{
new vip_menu = menu_create( "\wVip меню:", "menu_handler" );
menu_additem( vip_menu, "\wНизкая гравитация", "1", 0);
menu_additem( vip_menu, "\wСвечение", "2", 0);
menu_additem( vip_menu, "\wСкорость", "3", 0);
menu_additem( vip_menu, "\w200 HP и 200 Брони", "4", 0);
menu_additem( vip_menu, "\wБесшумные шаги", "5", 0);
menu_setprop(vip_menu, MPROP_EXITNAME, "\yВыход")
menu_display( id, vip_menu, 0 );
}
else
{
client_print(id, print_chat, "[ВИП] Для начала купите [ВИП]")
}

}


после удали строчки
Код
new bool:has_used[33]


Код
has_used[id] = true;


Код
public event_new_round()
    arrayset(has_used, false, 33)


Код
register_logevent("event_new_round", 2, "1=Round_Start")
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
OverGame
сообщение 22.12.2014, 15:35
Сообщение #4
Стаж: 11 лет

Сообщений: 384
Благодарностей: 217
Полезность: 348

Выше пропустил множество ошибок, по этому держи.

Скрытый текст
Код:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <hamsandwich>

#pragma tabsize 0

#define PLUGIN "VipMenu"
#define VERSION "1.0"
#define AUTHOR "NoNe"

#define ADMIN_VIP ADMIN_RESERVATION

#define SCOREATTRIB_NONE 0
#define SCOREATTRIB_DEAD ( 1 << 0 )
#define SCOREATTRIB_BOMB ( 1 << 1 )
#define SCOREATTRIB_VIP ( 1 << 2 )

public plugin_init()
{
register_clcmd( "vipmenu", "VIPMenu" );
register_clcmd( "say /vipmenu", "VIPMenu" );
register_clcmd( "say_team /vipmenu", "VIPMenu" );
register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
}

public VIPMenu( id )
{
if ( !(get_user_flags ( id ) & ADMIN_VIP) )
{
client_print(id, print_chat, "[ВИП] Для начала купите [ВИП]")
return PLUGIN_HANDLED
}

new vip_menu = menu_create( "\wVip меню:", "menu_handler" )
menu_additem( vip_menu, "\wНизкая гравитация", "1", 0)
menu_additem( vip_menu, "\wСвечение", "2", 0)
menu_additem( vip_menu, "\wСкорость", "3", 0)
menu_additem( vip_menu, "\w200 HP и 200 Брони", "4", 0)
menu_additem( vip_menu, "\wБесшумные шаги", "5", 0)

menu_setprop(vip_menu, MPROP_EXITNAME, "\yВыход")
menu_display( id, vip_menu, 0 )

return PLUGIN_HANDLED
}

public menu_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu );
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;

menu_item_getinfo( menu, item, access, data,5, iName, 63, callback );
new key = str_to_num( data );
switch( key )
{
case 1:
{
if( is_user_alive( id ) )
{
set_user_gravity( id, 0.5 );
}
}
case 2:
{
if(is_user_alive(id))
{
set_user_rendering(id, kRenderFxGlowShell, random_num(100, 255), random_num(100, 255), random_num(100, 255), kRenderNormal, 25);
}
}
case 3:
{
set_user_maxspeed(id, 370.0);
}
case 4:
{
if( is_user_alive( id ) )
{
set_user_health( id, 200 );
set_user_armor(id, 200);
}
}
case 5:
{
if( is_user_alive( id ) )
{
set_user_footsteps(id, 0);
}
}

}

menu_destroy( menu );
return PLUGIN_HANDLED;
}

public handle_say(id)
{
new said[192]
read_args(said,192)
return PLUGIN_CONTINUE
}

public MessageScoreAttrib( iMsgID, iDest, iReceiver )
{
new iPlayer = get_msg_arg_int( 1 );
if( is_user_connected( iPlayer )
&& ( get_user_flags( iPlayer ) & ADMIN_VIP ) ) {
set_msg_arg_int( 2, ARG_BYTE, is_user_alive( iPlayer ) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD );
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: