seroff

Anti net_graph 2 1.0 By Seroff

Dec 27th, 2015
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.54 KB | None | 0 0
  1. #include <amxmodx>
  2.  
  3. new PLUGIN[]="Anti net_graph 2"
  4. new VERSION[]="1.0"
  5. new AUTHOR[]="Seroff"
  6.  
  7. #define CONFIG_FILE "addons/amxmodx/configs/anti_net_graph2.cfg"
  8.  
  9. #define LOG_FILE "addons/amxmodx/logs/Detect_net_graph.log"
  10.  
  11. new name[33][33],authid[33][33],ip[33][26],g_Logs,g_kick,g_netgraph,g_Time;
  12.  
  13. public plugin_init()
  14. {
  15. register_plugin(PLUGIN, VERSION, AUTHOR)
  16. g_Logs = register_cvar("an_graph_logs","1")
  17. g_kick = register_cvar("an_graph_kick","1")
  18. g_netgraph = register_cvar("an_graph","1")
  19. g_Time = register_cvar("an_graph_task","5.0")
  20. }
  21.  
  22. public plugin_cfg()
  23. {
  24. TryConfig()
  25. server_cmd("exec %s",CONFIG_FILE)
  26. }
  27.  
  28. stock TryConfig() {
  29.  
  30. if ( file_exists(CONFIG_FILE) )
  31.  
  32. return false
  33.  
  34.  
  35. static line0[]= "// Проверяем ли включён anti net_graph 2 By Seroff"
  36.  
  37. static line1[]= "an_graph_logs ^"1^" // Логи"
  38.  
  39. static line2[]= "an_graph_task ^"5.0^" // Таймаут проверки"
  40.  
  41. static line3[]= "an_graph_kick ^"1^" // При обнаружении кикать или вписовать, 0 вписовать, 1 кикать"
  42.  
  43. static line4[]= "an_graph ^"3^" // Если вписовать то какой..."
  44.  
  45. static line5[]= "echo ^"Anti net_graph 2 Config Executed^""
  46.  
  47. static line6[]= "// Контактные данные: skype: cheats-2013; vk: vk.com/sachoc_pro"
  48.  
  49.  
  50. new CONFIG_SAVE[999]; formatex(CONFIG_SAVE, charsmax(CONFIG_SAVE), "%s^r^n%s^r%s^r%s^r%s^r%s^r^n%s", line0, line1, line2, line3, line4, line5, line6)
  51.  
  52.  
  53. new F = fopen( CONFIG_FILE , "w" )
  54.  
  55. fputs( F , CONFIG_SAVE )
  56.  
  57. fclose( F )
  58.  
  59.  
  60. return true
  61.  
  62. }
  63.  
  64.  
  65. public client_putinserver(id)
  66. {
  67. new Float:iTime=get_pcvar_float(g_Time)
  68. set_task(iTime, "query_client", id, _, _, "b")
  69. }
  70.  
  71. public client_disconnect(id)
  72. {
  73. remove_task(id)
  74. }
  75.  
  76. public query_client(id)
  77. {
  78. query_client_cvar(id, "net_graph", "cvar_result_pitch")
  79. }
  80.  
  81. public cvar_result_pitch(id, const cvar[], const value[])
  82. {
  83. if(!is_user_bot(id)||!is_user_hltv(id))
  84. {
  85. if( value[0] != 'B' ) {
  86. if ((!strcmp(cvar, "net_graph", 1)) && (str_to_num(value) == 2))
  87. {
  88. get_user_ip(id,ip[id],25, 1)
  89. get_user_name(id,name[id],32)
  90. get_user_authid(id,authid[id],32)
  91. new iLogsEnable=get_pcvar_num(g_Logs)
  92. if(iLogsEnable)
  93. {
  94. log_to_file(LOG_FILE,"[Anti Net Graph 2] DETECT «%s» SteamID «%s» | Reason : [%s %s]",name[id], authid[id], cvar,value)
  95. }
  96. ColorChat(0, "^4[^3Anti-Cheat^4]^1Игрок ^4%s ^1Использует ^4[^3%s %s^4]",name[id], cvar, value)
  97.  
  98. if(get_pcvar_num(g_kick))
  99. {
  100. new g_print[][] = { "[Anti-Cheat] *********************" };
  101. new g_print1[][] = { "[Anti-Cheat] Требуеться прописать net_graph 0 или 1 или 3 в консоле" };
  102. client_print(id,print_console,"%s",g_print)
  103. client_print(id,print_console,"[Anti-Cheat] Ник: %s | IP: %s",name[id],ip[id])
  104. client_print(id,print_console,"%s",g_print1)
  105. client_print(id,print_console,"%s",g_print)
  106. server_cmd("kick #%d %s %s Detected", get_user_userid(id), cvar, value);
  107. }
  108. else
  109. {
  110. new iNetGraph=get_pcvar_num(g_netgraph)
  111. switch(iNetGraph)
  112. {
  113. case 0:
  114. {
  115. console_cmd(id,"net_graph 0")
  116. }
  117. case 1:
  118. {
  119. console_cmd(id,"net_graph 1")
  120. }
  121. case 2:
  122. {
  123. set_fail_state("an_graph 2 error, an_graph 0, 1, 3 ");
  124. }
  125. case 3:
  126. {
  127. console_cmd(id,"net_graph 3")
  128. }
  129. }
  130. }
  131. }
  132. }
  133. }
  134. }
  135.  
  136. /* Сток цветного чата */
  137. stock ColorChat(const id, const input[], any:...)
  138. {
  139. new count = 1, players[32]
  140. static msg[191]
  141. vformat(msg, 190, input, 3)
  142.  
  143. replace_all(msg, 190, "!g", "^4") // Зелёный
  144. replace_all(msg, 190, "!y", "^1") // Стандартный
  145. replace_all(msg, 190, "!t", "^3") // Цвет команды
  146.  
  147. if (id) players[0] = id; else get_players(players, count, "ch")
  148. {
  149. for (new i = 0; i < count; i++)
  150. {
  151. if (is_user_connected(players[i]))
  152. {
  153. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  154. write_byte(players[i]);
  155. write_string(msg);
  156. message_end();
  157. }
  158. }
  159. }
  160. }
Advertisement
Add Comment
Please, Sign In to add comment