Advertisement
Guest User

Anti Cheater/Bot - SAMP

a guest
Feb 20th, 2014
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.08 KB | None | 0 0
  1. /*
  2. VISITE NOSSO SITE: http://sampznx.blogspot.com.br/
  3. SAMP ZNX MELHOR BLOG DE SAMP DO BRASIL
  4. */
  5.  
  6. #include < a_samp >
  7.  
  8. #define FILTERSCRIPT
  9.  
  10. public OnFilterScriptInit ( ) {
  11.  
  12. printf ( "\n\n\n " ) ;
  13. printf ( " Jnr3 AntiCheater ==== LIGADO " ) ;
  14. printf ( " \n\n\n" ) ;
  15.  
  16. return
  17. true
  18. ;
  19. }
  20.  
  21. public OnFilterScriptExit ( ) {
  22.  
  23. printf ( "\n\n\n " ) ;
  24. printf ( " Jnr3 AntiCheater ==== DESLIGADO " ) ;
  25. printf ( " \n\n\n" ) ;
  26.  
  27. return
  28. true
  29. ;
  30. }
  31.  
  32. //============================= < [ @ Defines @ ] > ============================
  33.  
  34. #define MaximoConexoesPorIP 3 //Altere Como quiser !
  35. #define MaximoKillsPorPlayer 3 //Altere Como quiser !
  36. #define MaximoSpawnsPorPlayer 3 //Altere Como quiser !
  37.  
  38. //========================= < [ @ OnPlayerConnect @ ] > ========================
  39.  
  40.  
  41. new
  42. Mensagem [ 200 ]
  43. ;
  44.  
  45.  
  46. public OnPlayerConnect ( playerid ) {
  47.  
  48. if ( AtingiuLimiteIP ( playerid ) ) {
  49.  
  50. format ( Mensagem , sizeof ( Mensagem ) , "Jnr3 Anti Cheater: %s foi banido por atingir o Limite de Conexoes por IP ( BOT )" , Nome ( playerid ) ) ;
  51. SendClientMessageToAll ( 0xFF0000AA , Mensagem ) ;
  52.  
  53. Ban ( playerid ) ;
  54.  
  55. }
  56.  
  57. if ( NomeBot ( playerid ) ) {
  58.  
  59. format ( Mensagem , sizeof ( Mensagem ) , "Jnr3 Anti Cheater: %s foi banido por ter nome de BOT/Divulgação" , Nome ( playerid ) ) ;
  60. SendClientMessageToAll ( 0xFF0000AA , Mensagem ) ;
  61.  
  62. Ban ( playerid ) ;
  63. }
  64.  
  65. return
  66. true
  67. ;
  68. }
  69.  
  70. new
  71. Mortes [ MAX_PLAYERS ]
  72. ;
  73.  
  74. public OnPlayerDeath ( playerid , killerid , reason ) {
  75.  
  76. ++ Mortes [ playerid ] ;
  77.  
  78. SetTimerEx ( "VerificarFakeKill" , 1000 , false , "i" , playerid ) ;
  79.  
  80. return
  81. true
  82. ;
  83. }
  84.  
  85. new
  86. Spawns [ MAX_PLAYERS ]
  87. ;
  88.  
  89. public OnPlayerSpawn ( playerid ) {
  90.  
  91. ++ Spawns [ playerid ] ;
  92.  
  93. SetTimerEx ( "VerificarSpawnHack" , 1000 , false , "i" , playerid ) ;
  94.  
  95. return
  96. true
  97. ;
  98. }
  99.  
  100. //============================= < [ @ Timers @ ] > ============================= SAMP ZNX
  101.  
  102. forward VerificarFakeKill ( playerid ) ;
  103. public VerificarFakeKill ( playerid ) {
  104.  
  105. if ( Mortes [ playerid ] >= MaximoKillsPorPlayer ) {
  106.  
  107. Ban ( playerid ) ;
  108.  
  109. format ( Mensagem , sizeof ( Mensagem ) , "Jnr3 Anti Cheater: %s foi banido por Fake Kill Hack." , Nome ( playerid ) ) ;
  110. SendClientMessageToAll ( 0xFF0000AA , Mensagem ) ;
  111. }
  112.  
  113. Mortes [ playerid ] = 0 ;
  114.  
  115. return 1;
  116. }
  117.  
  118. forward VerificarSpawnHacker ( playerid ) ;
  119. public VerificarSpawnHacker ( playerid ) {
  120.  
  121. if ( Spawns [ playerid ] >= MaximoSpawnsPorPlayer ) {
  122.  
  123. format ( Mensagem , sizeof ( Mensagem ) , "Jnr3 Anti Cheater: %s foi banido por Spawn Hacker" , Nome ( playerid ) ) ;
  124. SendClientMessageToAll ( 0xFF0000AA , Mensagem ) ;
  125.  
  126. Ban ( playerid ) ;
  127. }
  128.  
  129. Spawns [ playerid ] = 0 ;
  130.  
  131. return
  132. true
  133. ;
  134. }
  135.  
  136. //============================= < [ @ Stocks @ ] > ============================= SAMP ZNX
  137.  
  138. stock Nome ( pid ) {
  139.  
  140. new
  141. NameP [ MAX_PLAYER_NAME ]
  142. ;
  143.  
  144. GetPlayerName ( pid , NameP , sizeof ( NameP ) ) ;
  145.  
  146. return
  147. NameP
  148. ;
  149. }
  150.  
  151. stock NomeBot ( playerid ) {
  152.  
  153. if ( strfind ( Nome ( playerid ) , "[HAX]" , true) != -1 )
  154. return
  155. true
  156. ;
  157.  
  158. return
  159. false
  160. ;
  161. }
  162.  
  163. stock IP ( playerid ) {
  164.  
  165. new
  166. pIP [ 16 ]
  167. ;
  168.  
  169. GetPlayerIp ( playerid , pIP , sizeof ( pIP ) ) ;
  170.  
  171. return
  172. pIP
  173. ;
  174. }
  175.  
  176. stock AtingiuLimiteIP ( playerid ) {
  177.  
  178. new
  179. Conexoes = 0 ;
  180.  
  181. for ( new i ; i < MAX_PLAYERS ; ++ i ) {
  182.  
  183. if ( strcmp ( IP ( playerid ) , IP ( i ) , false ) == 0 ) {
  184.  
  185. ++ Conexoes ;
  186.  
  187. if ( Conexoes >= MaximoConexoesPorIP ) {
  188.  
  189. return
  190. true
  191. ;
  192. }
  193. }
  194. }
  195.  
  196. return
  197. false
  198. ;
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement