Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Plugin generated by AMXX-Studio */
- #include < amxmodx >
- #include < amxmisc >
- #include < cstrike >
- #include < hamsandwich >
- #include < fakemeta_util >
- new const Tag[] = "AMXX"
- new bool:HasBrit[ 33 ] = false, bool: SameBrit[ 33 ], iMaxPlayers;
- public plugin_init() {
- register_plugin( "HitAndRun Team Alliance", "1.0", "Xdoctor" )
- register_clcmd("say /brit","britmenu" )
- register_logevent( "event_round_start", 2, "1=Round_Start" );
- RegisterHam( Ham_TakeDamage, "player", "fwTakeDamage" )
- iMaxPlayers = get_maxplayers();
- }
- public event_round_start(id)
- {
- HasBrit[id] = false
- }
- public britmenu(id)
- {
- if(cs_get_user_team( id ) == CS_TEAM_CT || is_user_bot( id ) || is_user_hltv( id ) )
- return 1;
- if( !is_user_alive( id ) )
- {
- ColorChat( id, "^4Team Alliance^1 is not ^3allowed^1 for ^4deads!^1." );
- return PLUGIN_HANDLED;
- }
- new title[30];
- formatex(title, charsmax(title), "[%s Team Alliance Menu: ]^n[Your Status :%s]", Tag, HasBrit[id] ? "Has Alliance" : "Dosent Haven Alliance" );
- new Bmenu = menu_create(title, "BritMenuHandler");
- menu_additem( Bmenu, "\y Create Alliance\d [ \yOne Round\d ]", "1")
- menu_additem( Bmenu, "\y Leave Team Alliance", "2" );
- menu_setprop( Bmenu, MPROP_EXIT, MEXIT_ALL );
- menu_setprop( Bmenu, MPROP_EXITNAME, "\wExit\d ( \yBye Bye \d)" )
- menu_display(id, Bmenu);
- return 1;
- }
- public BritMenuHandler(id, Bmenu, item)
- {
- if( item == MENU_EXIT )
- {
- menu_destroy(Bmenu)
- return PLUGIN_HANDLED
- }
- if( !is_user_alive( id ) )
- {
- ColorChat( id, "^4Team Alliance^1 is not ^3allowed^1 for ^4deads!^1." );
- return PLUGIN_HANDLED;
- }
- new Data[6], iName[64], Access, Callback
- menu_item_getinfo(Bmenu, item, Access, Data, 5, iName, 63, Callback)
- new Key = str_to_num( Data )
- switch( Key )
- {
- case 1: return choose_Player( id );
- case 2: return remove_Player( id );
- }
- return PLUGIN_HANDLED;
- }
- public remove_Player( id )
- {
- new szMenu[ 128 ];
- formatex( szMenu, charsmax( szMenu ), "\d [ \y%s Team Alliance\d ] \y Leave Alliance Team\w", Tag );
- new Menu = menu_create( szMenu, "removePlayerHandler" );
- for( new i = 0; i < iMaxPlayers; i++ )
- {
- if( !is_user_alive( i ) && SameBrit[ i ] == true )
- continue;
- formatex( szMenu, charsmax( szMenu ), "\rDelte Team Alliance\w: \yWith \d[ \y%s\d ]", GetUserName( i ) )
- menu_additem( Menu, szMenu );
- }
- menu_destroy( Menu );
- return 1;
- }
- public removePlayerHandler( id, Menu, Item )
- {
- if( Item == MENU_EXIT )
- {
- menu_destroy( Menu );
- return 1;
- }
- new data[ 6 ], szName[ 64 ], access, callback;
- menu_item_getinfo( iMenu, item, access, data, charsmax( data ), szName, charsmax( szName ), callback );
- new player = str_to_num( data );
- SendLeaveRequest( id );
- }
- public sendLeaveRequest( id, player );
- {
- new szMenu[ 128 ];
- formatex( szMenu, charsmax( szMenu ), "\r%s Are you sure you want to leave your Team Alliance with %s", GetUserName( id ), GetUserName( player ) );
- new menu = menu_create(Title, "LeaveRequestHandler");
- menu_additem(menu, "\yLeave", "1" );
- menu_additem(menu, "\yStay", "2" );
- menu_display(player, menu);
- return 1;
- }
- public LeaveRequestHandler( id, player, item, menu)
- {
- switch(item)
- {
- case 0:
- {
- HasBrit[id] = false; HasBrit[player] = false;
- SameBrit[ id ] = false; SameBrit[ player ] = false;
- ColorChat( 0, "^4%s^1 Just Deleted Is Alliace with^1 %s", GetUserName( id ), GetUserName( player ) );
- if( HasBrit[ id ] && HasBrit[ player ] )
- }
- case 1:
- {
- ColorChat( id, "^4%s^1 Your Team Alliace With ^4%s^1 Is Still Activate.", GetUserName( id ), GetUserName( player ) );
- HasBrit[id] = false;
- }
- }
- return 1;
- }
- public choose_Player(id)
- {
- if( !is_user_alive( id ) )
- {
- ColorChat( id, "^4Team Alliance^1 is not ^3allowed^1 for ^4deads!^1." );
- return PLUGIN_HANDLED;
- }
- static opcion[64]
- formatex(opcion, charsmax(opcion),"\d[\y %s\d ]\y Choose Your Team Alliance\w:", Tag)
- new iMenu = menu_create(opcion, "ChooseplayerHandler")
- new players[32], pnum, tempid;
- new szName[32], szUserId[32];
- get_players( players, pnum, "ache", "TERRORIST" );
- for ( new i; i<pnum; i++ )
- {
- if( is_user_alive(i) )
- continue;
- tempid = players[i];
- get_user_name( tempid, szName, charsmax( szName ) );
- formatex( szUserId, charsmax( szUserId ), "%d", get_user_userid( tempid ) );
- menu_additem( iMenu, szName, szUserId);
- }
- menu_display( id, iMenu);
- return 1;
- }
- public ChooseplayerHandler( id, iMenu, item )
- {
- if ( item == MENU_EXIT )
- {
- menu_destroy( iMenu );
- return 1;
- }
- if( !is_user_alive( id ) )
- {
- ColorChat( id, "^4Team Alliance^1 is not ^3allowed^1 for ^4deads!^1." );
- return PLUGIN_HANDLED;
- }
- new data[ 6 ], szName[ 64 ], access, callback;
- menu_item_getinfo( iMenu, item, access, data, charsmax( data ), szName, charsmax( szName ), callback );
- new player = str_to_num( data );
- ColorChat( id, "^3Your Team Alliance Request has been sended to to^1:^4 %s", GetUserName( player ) );
- BritRequestMenu( id, player )
- return 1;
- }
- public BritRequestMenu(id, player)
- {
- HasBrit[id] = false;
- new Title[64];
- formatex(Title, charsmax(Title), "\r%s\y Invited You To Create A Team Alliance\W:", GetUserName( player ) );
- new menu = menu_create(Title, "BritRequestMenuHandler");
- menu_additem(menu, "\yYaaa man", "1" );
- menu_additem(menu, "\yNah im good", "2" );
- menu_display(player, menu);
- return 1;
- }
- public BritRequestMenuHandler(id, player, item, menu)
- {
- if( !is_user_alive( id ) )
- {
- ColorChat( id, "^4Team Alliance^1 is not ^3allowed^1 for ^4deads!^1." );
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0:
- {
- HasBrit[id] = true; HasBrit[player] = true;
- ColorChat( 0, "^4%s^1 Just Started A Team Alliace With^1 %s", GetUserName( id ), GetUserName( player ) );
- if( HasBrit[ id ] && HasBrit[ player ] )
- {
- SameBrit[ id ] = true; SameBrit[ player ] = true;
- }
- }
- case 1:
- {
- ColorChat( id, "^4%s^1 Your Team Alliace RequestTo ^4%s^1 Has Been Denied.", GetUserName( id ), GetUserName( player ) );
- HasBrit[id] = false;
- }
- }
- return 1;
- }
- public fw_TakeDamage( id, Victim, idinflictor, Attacker, Float:damage, damagebits )
- {
- if( Attacker && Victim )
- {
- if( HasBrit[ id ] == true )
- {
- return HAM_IGNORED;
- }
- }
- return HAM_SUPERCEDE;
- }
- stock GetUserName( const Index )
- {
- static gName[ 32 ];
- get_user_name( Index, gName, charsmax( gName ) );
- return gName;
- }
- stock ColorChat(const id, const string[], {Float, Sql, Resul,_}:...)
- {
- new msg[191], players[32], count = 1
- static len
- len = formatex(msg, charsmax(msg), "^1[ ^4AMXX ^1] ")
- vformat(msg[len], charsmax(msg) - len, string, 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()
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement