Raised This Month: $ Target: $400
 0% 

Invalid Player id


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Supremache
Veteran Member
Join Date: Sep 2019
Location: Egypt
Old 08-02-2021 , 22:09   Re: Invalid Player id
Reply With Quote #2

Try this, untested!.

Code:
#include <amxmodx> #include <amxmisc> #include <cstrike> new const PLUGIN_NAME[ ]    = "UserPrefix" new const VERSION[ ]    = "1.0" new const AUTHOR[ ] = "Supremache" native get_user_level(id) new g_iSayText; public plugin_init() {     register_plugin     (         .plugin_name    = PLUGIN_NAME,         .version    = VERSION,         .author     = AUTHOR     )         register_cvar( PLUGIN_NAME, VERSION, FCVAR_SERVER|FCVAR_SPONLY);     set_cvar_string( PLUGIN_NAME, VERSION);         g_iSayText = get_user_msgid( "SayText" );     register_clcmd("say ", "GlobalChat");     register_clcmd("say_team ", "TeamChat"); } public GlobalChat(iPlayer) {     SetPrefix( iPlayer , true ); } public TeamChat(iPlayer) {     SetPrefix( iPlayer , false ); } SetPrefix( iPlayer , bool:bTeam ) {     if(!is_user_connected(iPlayer))     {         return PLUGIN_HANDLED_MAIN;     }         static iAlive,         szMessage[ 192 ],         iPlayers[ 32 ],         iNum,         szName[ 32 ],         szData[ 256 ],         iTarget     iAlive = is_user_alive( iPlayer );     new CsTeams:iTeam = CsTeams:( ( _:cs_get_user_team( iPlayer ) ) % 3 );         new const Say[2][ CsTeams ][] =     {         { "*SPEC* ", "*DEAD* ", "*DEAD* ", "*DEAD* " },         { "", "", "", ""}     }     new const SayTeam[2][ CsTeams ][] =     {         {"(Spectator) ", "*DEAD*(Terrorist) ", "*DEAD*(Counter-Terrorist) ", ""},         {"(Spectator) ", "(Terrorist) ", "(Counter-Terrorist) ", ""}     };         enum eTags     {         Prefix[ 32 ],         iFlag     }         new const szTag[ ][ eTags ] =     {         { "OWNER", ADMIN_IMMUNITY },         { "HEAD-ADMIN", ADMIN_BAN },         { "ADMIN", ADMIN_KICK }     }     if( !IsValidMessage( true, szMessage, charsmax( szMessage ) ) )     {         return PLUGIN_HANDLED_MAIN;     }         get_user_name( iPlayer, szName, charsmax(szName));     get_players( iPlayers, iNum );         for( new i ; i < sizeof ( szTag ) ; i++ )     {         if( get_user_flags( iPlayer ) & szTag[ i ][ iFlag ] )         {             formatex( szData , charsmax( szData), "^1%s^4[%s^1-^4 Lv.%d] %s^3: %s", bTeam ? Say[ iAlive ][ iTeam ] : SayTeam[ iAlive ][ iTeam ], szTag[ i ][ Prefix ], get_user_level(iPlayer), szName, szMessage );         }         else         {             formatex( szData , charsmax( szData), "^1%s^4 [Lv.%d]^3 %s^3: %s", bTeam ? Say[ iAlive ][ iTeam ] : SayTeam[ iAlive ][ iTeam ], get_user_level(iPlayer), szName, szMessage );         }     }         for( new i = 0; i < iNum; i++ )     {         iTarget = iPlayers[ i ];                 if( iTarget == iPlayer || ( iAlive || is_user_connected( iTarget ) ) && is_user_alive( iTarget ) == iAlive )         {             message_begin( MSG_ONE, g_iSayText, {0, 0, 0}, iTarget );             write_byte( iPlayer );             write_string( szData );             message_end( );         }     }       return PLUGIN_HANDLED_MAIN; } bool:IsValidMessage( bool:bTeamSay, szMessage[ ], iLen ) {     read_args( szMessage, iLen );     remove_quotes( szMessage );         if( !szMessage[ 0 ] )     {         return false;     }       new iPos, cChar, i;     while( ( cChar = szMessage[ iPos ] ) == '@' )     {         i++;         iPos++;     }         if( i > 0 )     {         return ( !( bTeamSay ? ( i == 1 ) : ( 1 <= i <= 3 ) ) );     }         while( 0 < ( cChar = szMessage[ iPos++ ] ) <= 255 )     {         if( cChar != ' ' && cChar != '%' )         {             return true;         }     }         return false; }
__________________
Youtube.com/Supremache

Bank System [Nvault - SQL Support]
VIP System
  • If you think it's that simple, then do it yourself.

Last edited by Supremache; 08-04-2021 at 06:12.
Supremache is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:38.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode