Advertisement
Guest User

amx_antiss

a guest
Feb 27th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.92 KB | None | 0 0
  1. #include < amxmodx >
  2. #include < amxmisc >
  3. #include < cstrike >
  4. #include < fun >
  5. #include < CC_ColorChat >
  6. #pragma semicolon 1
  7. #define PLUGIN "Advanced SS"
  8. #define VERSION "1.0"
  9. #define SS_ACCESS ADMIN_SLAY
  10. #define SignTask 112233
  11. #define UnSignTask 332211
  12. enum
  13. {
  14. INFO_NAME,
  15. INFO_IP,
  16. INFO_AUTHID
  17. };
  18. new const szTag[ ] = "*";
  19. new const szSite[ ] = ".";
  20. new g_iUserHP[ 33 ];
  21. new g_iUserAP[ 33 ];
  22. new gCvarMoveSpec;
  23. new SyncHudMessage;
  24. new SyncHudMessage2;
  25. new SyncHudMessage3;
  26. public plugin_init( )
  27. {
  28. register_plugin( PLUGIN, VERSION, "Askhanar" );
  29. gCvarMoveSpec = register_cvar( "ss_move_spec", "0" );
  30. register_clcmd( "amx_antiss", "ClCmdSS" );
  31. SyncHudMessage = CreateHudSyncObj( );
  32. SyncHudMessage2 = CreateHudSyncObj( );
  33. SyncHudMessage3 = CreateHudSyncObj( );
  34. }
  35. public client_putinserver( id )
  36. {
  37. g_iUserHP[ id ] = 0;
  38. g_iUserAP[ id ] = 0;
  39. }
  40. public client_disconnect( id )
  41. {
  42. g_iUserHP[ id ] = 0;
  43. g_iUserAP[ id ] = 0;
  44. if( task_exists( id + UnSignTask ) )
  45. {
  46. ColorChat( 0, RED, "^x04%s^x03 %s^x01 s-a deconectat in timp ce i s-a facut SS!", szTag, GetInfo( id, INFO_NAME ) );
  47. remove_task( id + UnSignTask );
  48. }
  49. }
  50. public ClCmdSS( id )
  51. {
  52. if( !( get_user_flags( id ) & SS_ACCESS ) )
  53. {
  54. client_cmd( id, "echo %s Nu ai acces la aceasta comanda!", szTag );
  55. return 1;
  56. }
  57. new szFirstArg[ 32 ];
  58. read_argv( 1, szFirstArg, sizeof ( szFirstArg ) -1 );
  59. if( equal( szFirstArg, "" ) )
  60. {
  61. client_cmd( id, "echo amx_antiss < nume > faci o poza semnata!" );
  62. return 1;
  63. }
  64. new iPlayer = cmd_target( id, szFirstArg, 8 );
  65. if( !iPlayer )
  66. {
  67. client_cmd( id, "echo %s Jucatorul specificat nu a fost gasit!", szTag );
  68. return 1;
  69. }
  70. if( !is_user_alive( iPlayer ) )
  71. {
  72. client_cmd( id, "echo %s Jucatorul %s nu este in viata !", szTag, GetInfo( iPlayer, INFO_NAME ) );
  73. return 1;
  74. }
  75. if( task_exists( iPlayer + SignTask) || task_exists( iPlayer + UnSignTask ) )
  76. {
  77. client_cmd( id, "echo %s Jucatorul %s este in curs de 'pozare' !", szTag, GetInfo( iPlayer, INFO_NAME ) );
  78. return 1;
  79. }
  80. if( cs_get_user_team( id ) != CS_TEAM_SPECTATOR )
  81. {
  82. client_cmd( id, "echo %s Trebuie sa fii Spectator ca sa poti face o poza!", szTag );
  83. return 1;
  84. }
  85. ColorChat( 0, RED, "[DMG]^x04%s^x03 %s^x01 i-a facut o poza semnata lui^x04 %s^x01 !", szTag, GetInfo( id, INFO_NAME ), GetInfo( iPlayer, INFO_NAME ) );
  86. g_iUserHP[ iPlayer ] = get_user_health( iPlayer );
  87. g_iUserAP[ iPlayer ] = get_user_armor( iPlayer );
  88. set_user_godmode( iPlayer, 1 );
  89. set_user_health( iPlayer, 255 );
  90. set_user_armor( iPlayer, 255 );
  91. ColorChat( iPlayer, RED, "[DMG]^x04%s^x01 Nume:^x03 %s^x04 |^x01 Nume Admin:^x03 %s", szTag, GetInfo( iPlayer, INFO_NAME ), GetInfo( id, INFO_NAME ) );
  92. ColorChat( iPlayer, RED, "[DMG]^x04%s^x01 IP:^x03 %s^x04 |^x01 IP Admin:^x03 %s", szTag, GetInfo( iPlayer, INFO_IP ), GetInfo( id, INFO_IP ) );
  93. ColorChat( iPlayer, RED, "[DMG]^x04%s^x01 SteamId:^x03 %s^x04 |^x01 SteamId Admin:^x03 %s", szTag, GetInfo( iPlayer, INFO_AUTHID ), GetInfo( id, INFO_AUTHID ) );
  94. ColorChat( iPlayer, RED, "[DMG]^x04%s^x01 Data/Ora:^x03 %s^x04 |^x01 Site ^x03%s", szTag, _get_time( ), szSite );
  95. client_print( iPlayer, print_center, "Screenshot facut.." );
  96.  
  97. client_print( iPlayer, print_console, "[DMG] %s Nume: %s | Nume Admin: %s", szTag, GetInfo( iPlayer, INFO_NAME ), GetInfo( id, INFO_NAME ) );
  98. client_print( iPlayer, print_console, "[DMG] %s IP: %s | IP Admin: %s", szTag, GetInfo( iPlayer, INFO_IP ), GetInfo( id, INFO_IP ) );
  99. client_print( iPlayer, print_console, "[DMG] %s SteamId: %s | SteamId Admin: %s", szTag, GetInfo( iPlayer, INFO_AUTHID ), GetInfo( id, INFO_AUTHID ) );
  100. client_print( iPlayer, print_console, "[DMG] %s Data/Ora: %s | Site %s", szTag, _get_time( ), szSite );
  101. for( new i = 1; i <= 3; i++ )
  102. DisplayMessages( iPlayer, i );
  103. set_task( 0.1, "SignScreen", iPlayer + SignTask );
  104. return 1;
  105. }
  106. public SignScreen( iPlayer )
  107. {
  108. iPlayer -= SignTask;
  109. if( !is_user_connected( iPlayer ) ) return 1;
  110. client_cmd( iPlayer, "toggleconsole;snapshot;toggleconsole" );
  111. if( get_pcvar_num( gCvarMoveSpec ) )
  112. {
  113. user_kill( iPlayer, 1 );
  114. cs_set_user_team( iPlayer, CS_TEAM_SPECTATOR );
  115. }
  116. set_task( 0.7, "UnSignPlayer", iPlayer + UnSignTask );
  117. return 0;
  118. }
  119. public UnSignPlayer( iPlayer )
  120. {
  121. iPlayer -= UnSignTask;
  122. if( !is_user_connected( iPlayer ) ) return 0;
  123. ColorChat( iPlayer, RED, "^x04%s^x03 Screenshot semnat..", szTag );
  124. client_cmd( iPlayer, "echo %s^x03 Screenshot semnat..", szTag );
  125. client_print( iPlayer, print_center, "Screenshot semnat.." );
  126. if( is_user_alive( iPlayer ) )
  127. {
  128. set_user_godmode( iPlayer, 0 );
  129. set_user_health( iPlayer, g_iUserHP[ iPlayer ] );
  130. set_user_armor( iPlayer, g_iUserAP[ iPlayer ] );
  131. }
  132. g_iUserHP[ iPlayer ] = 0;
  133. g_iUserAP[ iPlayer ] = 0;
  134. return 0;
  135. }
  136. public DisplayMessages( iPlayer, const iMessage )
  137. {
  138. new szHostName[ 64 ];
  139. get_cvar_string( "hostname", szHostName, sizeof ( szHostName ) -1 );
  140. switch( iMessage )
  141. {
  142. case 1:
  143. {
  144. set_hudmessage( 255, 0, 0, 0.10, 0.25, 0, 0.0 , 0.2, 0.0, 0.1, 1 );
  145. ShowSyncHudMsg( iPlayer, SyncHudMessage, "%s", szHostName );
  146. }
  147. case 2:
  148. {
  149. set_hudmessage( 235, 255, 45, -1.0, -1.0, 0, 0.0 , 0.2, 0.0, 0.1, 2 );
  150. ShowSyncHudMsg( iPlayer, SyncHudMessage2, "%s", szHostName );
  151. }
  152. case 3:
  153. {
  154. set_hudmessage( 0, 0, 255, 0.75, 0.75, 0, 0.0 , 0.2, 0.0, 0.1, 3 );
  155. ShowSyncHudMsg( iPlayer, SyncHudMessage3, "%s", szHostName );
  156. }
  157. }
  158. }
  159. stock GetInfo( id, const iInfo )
  160. {
  161. new szInfoToReturn[ 64 ];
  162. switch( iInfo )
  163. {
  164. case INFO_NAME:
  165. {
  166. new szName[ 32 ];
  167. get_user_name( id, szName, sizeof ( szName ) -1 );
  168. copy( szInfoToReturn, sizeof ( szInfoToReturn ) -1, szName );
  169. }
  170. case INFO_IP:
  171. {
  172. new szIp[ 32 ];
  173. get_user_ip( id, szIp, sizeof ( szIp ) -1, 1 );
  174. copy( szInfoToReturn, sizeof ( szInfoToReturn ) -1, szIp );
  175. }
  176. case INFO_AUTHID:
  177. {
  178. new szAuthId[ 35 ];
  179. get_user_authid( id, szAuthId, sizeof ( szAuthId ) -1 );
  180. copy( szInfoToReturn, sizeof ( szInfoToReturn ) -1, szAuthId );
  181. }
  182. }
  183. return szInfoToReturn;
  184. }
  185. stock _get_time( )
  186. {
  187. new logtime[ 32 ];
  188. get_time("%d.%m.%Y - %H:%M:%S", logtime ,sizeof ( logtime ) -1 );
  189. return logtime;
  190. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement