Guest User

TheRoW Mute System.

a guest
Oct 4th, 2014
388
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.86 KB | None | 0 0
  1. #if defined system_credits
  2.                                 ( "Includes" )
  3.                             ( "a_samp"  - "v0.3z-R4" )
  4.                             ( "sscanf2" -  "v2.8.1"  )
  5.                             ( "zcmd"    -  "v0.3.1"  )
  6.                            
  7.                                  ( "Script" )
  8.                            ( "TheRoW" - "Scripter" )
  9.                           ( "Do not remove credits" )
  10.  
  11. #endif
  12.  
  13. #include    "   a_samp  "
  14. #include    "   sscanf2 "
  15. #include    "   zcmd    "
  16.  
  17. new UTS_MuteTime[ MAX_PLAYERS ], szReasonMute[ MAX_PLAYERS ][ 32 ];
  18.  
  19. CMD:mute( playerid, params [ ] )
  20. {
  21.     if( !IsPlayerAdmin( playerid ) ) return SendClientMessage( playerid, -1, "{FF0000}[Error]: You're not RCON admin !" );
  22.     if( UTS_MuteTime[ playerid ] != 0 ) return SendClientMessage( playerid, -1, "{FF0000}[Error]: That player is already muted." );
  23.     new iUser, iTime, szReason[ 32 ];
  24.     if( sscanf( params, "uds[32]", iUser, iTime, szReason ) ) return SendClientMessage( playerid, -1, "{FF0000}Use{FFFFFF}: /mute < Player || Time(InMinutes) || Reason >" );
  25.     MutePlayer( iUser, playerid, iTime, szReason );
  26.     return 1;
  27. }
  28.  
  29. public OnFilterScriptInit( ) return print( ">> TheRoW Advanced mute system.\n>> Loaded." );
  30.  
  31. public OnFilterScriptExit( ) return print( ">> TheRoW Advanced mute system.\n>> Unloaded." );
  32.  
  33. public OnPlayerConnect( playerid )
  34. {
  35.     UTS_MuteTime[ playerid ] = 0;
  36.     return 1;
  37. }
  38.  
  39. public OnPlayerText( playerid, text [ ] )
  40. {
  41.     new szString[ 128 ], szName[ MAX_PLAYER_NAME ];
  42.     if( UTS_MuteTime[ playerid ] != 0 )
  43.     {
  44.         format( szString, 128, "[{FF0000}Advanced Mute{FFFFFF}]: You're muted. Reaming time: %d seconds, Reason: %s.", UTS_MuteTime[ playerid ] - gettime( ), szReasonMute[ playerid ] );
  45.         SendClientMessage( playerid, -1, szString );
  46.         return 0;
  47.     }
  48.    
  49.     GetPlayerName( playerid, szName, MAX_PLAYER_NAME );
  50.     format( szString, 128, "%s(%d): %s", szName, playerid, text );
  51.     SendClientMessage( playerid, -1, szString );
  52.     return 0;
  53. }
  54.  
  55. public OnPlayerUpdate( playerid )
  56. {
  57.     if( gettime( ) > UTS_MuteTime[ playerid ] && UTS_MuteTime[ playerid ] != 0 )
  58.     {
  59.         UnmutePlayer( playerid );
  60.     }
  61.     return 1;
  62. }
  63.  
  64. stock MutePlayer( playerid, iGivedBy, iTime, szReason[ ] )
  65. {
  66.     if( !IsPlayerConnected( playerid ) ) return 0;
  67.     UTS_MuteTime[ playerid ] = gettime( ) + 60 * iTime;
  68.     format( szReasonMute[ playerid ], 32, szReason );
  69.     new szName[ MAX_PLAYER_NAME ], szString[ 128 ];
  70.     GetPlayerName( iGivedBy, szName, MAX_PLAYER_NAME );
  71.     SendClientMessage( playerid, -1, "[{FF0000}Advanced Mute{FFFFFF}]" );
  72.     format( szString, 128, "{FF0000}>> {FFFFFF}Administrator %s gived you mute for %d minutes.", szName, iTime );
  73.     SendClientMessage( playerid, -1, szString );
  74.     format( szString, 128, "{FF0000}>> {FFFFFF}Reason: %s.", szReason );
  75.     SendClientMessage( playerid, -1, szString );
  76.     return 1;
  77. }
  78.  
  79. stock UnmutePlayer( playerid )
  80. {
  81.     if( !IsPlayerConnected( playerid ) ) return 0;
  82.     UTS_MuteTime[ playerid ] = 0;
  83.     SendClientMessage( playerid, -1, "[{FF0000}Advanced Mute{FFFFFF}]: Now you unmuted." );
  84.     return 1;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment