Advertisement
Guest User

sadqdq

a guest
Jan 19th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <celltrie>
  3. #define PLUGIN "floodban"
  4. #define VERSION "0.1"
  5. #define AUTHOR "mazdan"
  6.  
  7. new Trie:g_u_ip_warn
  8. new Trie:g_u_time
  9.  
  10. public plugin_init()
  11. {
  12. register_plugin(PLUGIN, VERSION, AUTHOR);
  13. g_u_ip_warn=TrieCreate();
  14. g_u_time=TrieCreate();
  15. set_task(360.0,"arrclear",_,_,_,"b")
  16. }
  17.  
  18. public arrclear()
  19. {
  20. TrieClear(g_u_ip_warn)
  21. TrieClear(g_u_time)
  22. }
  23. public client_connect(id)
  24. {
  25. if(is_user_bot(id)) return;
  26. new ip[32]
  27. new ltime
  28. get_user_ip(id,ip,31,0)
  29. if(!ip[0]) return;
  30. if (!TrieKeyExists(g_u_ip_warn, ip))
  31. {
  32. TrieSetCell(g_u_ip_warn,ip,1);
  33. }
  34. else
  35. {
  36. TrieGetCell(g_u_time,ip,ltime);
  37. if(!(get_systime()-ltime))
  38. {
  39. new warn
  40. TrieGetCell(g_u_ip_warn,ip,warn)
  41. if(++warn>4)
  42. {
  43. new uip[32]
  44. get_user_ip(id,uip,31,1)
  45. server_cmd("addip 600.0 %s",uip)
  46. TrieDeleteKey(g_u_ip_warn, ip);
  47. }
  48. else
  49. TrieSetCell(g_u_ip_warn,ip,warn)
  50. }
  51. }
  52. TrieSetCell(g_u_time,ip,get_systime());
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement