So I have this menu. I need, when someone opened the menu he became admin with admin_level_c and nobody can open this menu only player who write /menu first. When he dosconected another player can write /menu.
PHP Code:
#include <amxmodx>
#include <colorchat>
public plugin_init()
{
register_clcmd( "say /menu","cwmenu" );
}
public cwmenu( id )
{
new menu = menu_create( "\yServer menu:", "menu_handler" )
menu_additem( menu, "\wStart match (warmup,knife,live)", "", 0 );
menu_additem( menu, "\wSkip warmup", "", 0 );
menu_additem( menu, "\wRestart (match or half)", "", 0 );
menu_additem( menu, "\wAbort match", "", 0 );
menu_additem( menu, "\wChange map", "", 0 );
menu_additem( menu, "\wSwap sides", "", 0 );
menu_additem( menu, "\wServer settings", "", ADMIN_ADMIN );
menu_display( id, menu, 0 );
}
public menu_handler( id, menu, item )
{
switch( item )
{
case 0:
{
client_cmd(id,"cw")
set_task (0.1,"cwmenu",id)
}
case 1:
{
client_cmd(id,"cwstart")
set_task (0.1,"cwmenu",id)
}
case 2:
{
client_cmd(id,"cwrestart")
set_task (0.1,"cwmenu",id)
}
case 3:
{
client_cmd(id,"cwabort")
set_task (0.1,"cwmenu",id)
}
case 4:
{
SubMenu( id );
}
case 5:
{
client_cmd(id,"cwswap")
set_task (0.1,"cwmenu",id)
}
case 6:
{
client_cmd(id,"cwmenu")
set_task (0.1,"cwmenu",id)
}
case MENU_EXIT:
{
}
}
menu_destroy( menu );
return PLUGIN_HANDLED;
}
SubMenu( id )
{
//Note that we will be using a different menu handler
new menu = menu_create( "\yZmenit mapu:", "submenu_handler" )
menu_additem( menu, "\wde_dust2", "", 0 );
menu_additem( menu, "\wde_inferno", "", 0 );
menu_additem( menu, "\wde_nuke", "", 0 );
menu_additem( menu, "\wde_cpl_mill", "", 0 );
menu_additem( menu, "\wcs_office", "", 0 );
menu_additem( menu, "\wde_dust", "", 0 );
menu_additem( menu, "\wde_train", "", 0 );
menu_additem( menu, "\wak_47", "", 0 );
menu_additem( menu, "\waim_b0n0", "", 0 );
menu_additem( menu, "\waim_awp", "", 0 );
menu_additem( menu, "\waim_map", "", 0 );
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_setprop(menu, MPROP_BACKNAME, "Back");
menu_setprop(menu, MPROP_NEXTNAME, "Next");
menu_setprop(menu, MPROP_EXITNAME, "Exit");
menu_setprop(menu, MPROP_NOCOLORS, 1);
menu_display( id, menu, 0 );
}
public submenu_handler( id, menu, item )
{
switch( item )
{
case 0:
{
client_cmd(id,"say pznuke")
}
case 1:
{
client_cmd(id,"say pznuke")
}
case 2:
{
client_cmd(id,"say pznuke")
}
case 3:
{
client_cmd(id,"say pzpause")
}
case 4:
{
client_cmd(id,"say pzcplmill")
}
case 5:
{
client_cmd(id,"say pzoffice")
}
case 6:
{
client_cmd(id,"say pzdust")
}
case 7:
{
client_cmd(id,"say pztrain")
}
case 8:
{
client_cmd(id,"say pzak")
}
case 9:
{
client_cmd(id,"say pzbono")
}
case 10:
{
client_cmd(id,"say pzawp")
}
case 11:
{
client_cmd(id,"say pzaim")
}
case MENU_EXIT:
{
}
}
menu_destroy( menu );
return PLUGIN_HANDLED;
}
stock vip_color_chat(const id, const input[], any:...) {
new count = 1, players[ 32 ]
static msg[ 191 ]
vformat( msg, 190, input, 3 )
replace_all( msg, 190, "!g", "^4" )
replace_all( msg, 190, "!y", "^1" )
replace_all( msg, 190, "!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( )
}
}
}
}