/* Sublime AMXX Editor v3.0.0-beta */
#include < amxmodx >
#include < fakemeta >
#pragma semicolon 1
/* GLOBAL STUFF */
new const PLUGIN_NAME[ ] = "JB: Welcome Menu";
new const PLUGIN_VERSION[ ] = "1.1b";
new const PLUGIN_AUTHOR[ ] = "Chema";
new const PLUGIN_CVAR[ ] = "jb_wm_version";
new const CHAT_PREFIX[ ] = "^3[SG]^1 ";
new WEBSITE_URL[ ] = "www.skill-gamerz.net";
new const ITEM_SOUND[ ] = "Ui/buttonclickrelease.wav";
new g_iMsgVGUIMenu, g_iMsgShowMenu;
public plugin_init( ) {
/* Register Plugin & Cvars */
register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR );
register_cvar( PLUGIN_CVAR, PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY );
/* Messages Hook */
g_iMsgShowMenu = get_user_msgid( "ShowMenu" );
g_iMsgVGUIMenu = get_user_msgid( "VGUIMenu" );
register_message( g_iMsgVGUIMenu, "MESSAGE_BlockMenu" );
register_message( g_iMsgShowMenu, "MESSAGE_BlockMenu" );
}
/* Precache */
public plugin_precache( )
precache_sound( ITEM_SOUND );
/* Messages */
public MESSAGE_BlockMenu( const iMsgId, const iMsgDest, const id ) {
if( get_user_team( id ) == 1 || get_user_team( id ) == 2 )
return PLUGIN_CONTINUE;
ShowWelcomeMenu( id );
return PLUGIN_HANDLED;
}
/* Welcome Menu */
public ShowWelcomeMenu( const id ) {
if( get_user_team( id ) == 1 || get_user_team( id ) == 2 )
return PLUGIN_HANDLED;
static iMenu;
iMenu = menu_create( "\yJailbreak Extreme \r1.5", "HandlerWelcomeMenu" );
menu_additem( iMenu, "Prisioneros" );
menu_additem( iMenu, "Guardias \r(MIC REQUERIDO)" );
menu_setprop( iMenu, MPROP_EXIT, MEXIT_NEVER );
menu_display( id, iMenu );
return PLUGIN_HANDLED;
}
public HandlerWelcomeMenu( const id, const iMenu, const iItem ) {
if( iItem == MENU_EXIT ) {
menu_destroy( iMenu );
return PLUGIN_HANDLED;
}
switch( iItem ) {
case 0: JoinPlayerRandomTeam( id, "1" );
case 1: JoinPlayerRandomTeam( id, "2" );
}
client_cmd( id, "spk ^"%s^"", ITEM_SOUND );
menu_destroy( iMenu );
return PLUGIN_HANDLED;
}
public JoinPlayerRandomTeam( const id, const szTeam[ ] ) {
if( is_user_connected( id ) ) {
static iRestore; iRestore = get_pdata_int( id, 510 );
if( iRestore & (1<<0) )
set_pdata_int( id, 510, iRestore & ~(1<<0) );
set_pdata_int( id, 365, 0 );
set_msg_block( g_iMsgShowMenu, BLOCK_SET );
set_msg_block( g_iMsgVGUIMenu, BLOCK_SET );
engclient_cmd( id, "jointeam", szTeam );
engclient_cmd( id, "joinclass", "5" );
set_msg_block( g_iMsgShowMenu, BLOCK_NOT );
set_msg_block( g_iMsgVGUIMenu , BLOCK_NOT );
if( iRestore & (1<<0) )
set_pdata_int( id, 510, iRestore );
ClientPrintColor( id, "Gracias por elegirnos, que tengas una buena estadía!" );
ClientPrintColor( id, "Visita nuestro foro: ^4%s^1.", WEBSITE_URL );
}
}
/* Stocks & Private functions */
stock ClientPrintColor( const id, const szInput[ ], any:... ) {
static szMessage[ 192 ], iLen;
if( !iLen )
iLen = formatex( szMessage, 191, CHAT_PREFIX );
vformat( szMessage[ iLen ], 191 - iLen, szInput, 3 );
message_begin( iID ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, get_user_msgid( "SayText" ), _, id );
write_byte( id ? id : 1 );
write_string( szMessage );
message_end( );
return 1;
}