Dabar yra 2019 Lie 18 08:44




 Puslapis 11 [ 3 pranešimai(ų) ] 
Autorius Žinutė
 Pranešimo tema: Anti Reklama
Žinutės numeris: #1  StandartinėParašytas: 2015 Bal 26 18:00 
Senbūvis

Užsiregistravo: 2015 Vas 27 19:29
Pranešimai: 1086
Karma: 45

Miestas: Alytus
Reik pataisyk kad nerodytu jo ten gmail ir pns tieg butu tik Apsauga ant visko kazkas tokio.

  1.  
  2. #include <amxmodx>
  3. #include <amxmisc>
  4. #include <geoip>
  5. #include <colorchat>
  6.  
  7. #define SIZE 32
  8. #define MAX_PLAYERS 32
  9. #define ACCESS      ADMIN_RCON
  10.  
  11. enum {     CHECK_NO,     CHECK_FIRST,     CHECK_CHANGE }
  12.  
  13. new pCvar_MaxDigits
  14. new pCvar_Prefix[SIZE]
  15. new pCvar_Status
  16. new pCvar_Punish
  17. new pcvar_Menu[40]
  18. new szMessage[ 194 ]
  19. new g_iCheckStatus[ MAX_PLAYERS + 1 ]
  20. new ON_OFF
  21.  
  22. new const g_szNameKey[ ] = "name"
  23.  
  24. public plugin_init( )
  25. {    
  26.  
  27.     register_plugin( "Anti Reklama", "3.0c", "Exolent/->UrOS<-" )
  28.     register_cvar("antireklama", "3.0c" , (FCVAR_SERVER|FCVAR_SPONLY))
  29.     register_srvcmd("antireklama_prefix", "prefix")  
  30.    
  31.     register_clcmd( "say", "CmdSay" )
  32.     register_clcmd( "say_team", "CmdSay" )
  33.    
  34.     register_clcmd("say /antireklama", "menuItem")
  35.     register_clcmd("say_team /antireklama", "menuItem")
  36.    
  37.     pCvar_Status = register_cvar("antireklama_status", "1", ADMIN_RCON)  
  38.     pCvar_Punish = register_cvar("antireklama_kazna", "0", ADMIN_RCON)     
  39.     pCvar_MaxDigits = register_cvar( "antireklama_maxbrojeva", "12", ADMIN_RCON)
  40. }
  41.  
  42. public plugin_precache()
  43. {
  44.     precache_sound("vox/access.wav")
  45.     precache_sound("vox/denied.wav")
  46. }
  47.  
  48. public prefix()
  49. {    
  50.     remove_task(123)
  51.     read_argv(1, pCvar_Prefix, SIZE-1)
  52. }   
  53.  
  54. public CmdSay( id )
  55. {  
  56.     if(get_pcvar_num(pCvar_Status) == 1)
  57.     {
  58.         read_args( szMessage, charsmax( szMessage ) )
  59.         remove_quotes( szMessage )
  60.        
  61.         new iCount
  62.         new iMax = get_pcvar_num( pCvar_MaxDigits )
  63.        
  64.         new i = -1
  65.         while( szMessage[ ++i ] )    
  66.         {          
  67.             if( '0' <= szMessage[ i ] <= '9' )        
  68.             {        
  69.                 if( ++iCount >= iMax )            
  70.                 {                      
  71.                     AntiReklamaMotd( id )
  72.                     AntiReklamaLog( id, szMessage ) 
  73.                     AntiReklamaPunish( id )            
  74.                     return PLUGIN_HANDLED
  75.                 }        
  76.             }    
  77.         }        
  78.     }
  79.     return PLUGIN_CONTINUE
  80. }
  81.  
  82. public client_putinserver( id )
  83. {  
  84.     if(get_pcvar_num(pCvar_Status) == 1)
  85.     {
  86.         g_iCheckStatus[ id ] = CHECK_FIRST
  87.        
  88.         new szName[ 32 ], text[512]
  89.         get_user_name( id, szName, charsmax( szName ) )
  90.        
  91.         if( !IsNameValid( szName ) )    
  92.         {
  93.             AntiReklamaLog( id, "Reklama je bila u imenu..." ) 
  94.             format(text,511,"%s Anti Reklama", pCvar_Prefix)
  95.             AntiReklamaMotd( id )
  96.             set_user_info( id, g_szNameKey, text)   
  97.             AntiReklamaPunish( id ) 
  98.         }  
  99.         g_iCheckStatus[ id ] = CHECK_CHANGE
  100.     }
  101. }
  102.  
  103. public client_disconnect( id )    
  104.     g_iCheckStatus[ id ] = CHECK_NO 
  105.    
  106. public client_infochanged( id )
  107. {
  108.     if(get_pcvar_num(pCvar_Status) == 1)
  109.     {       
  110.         if( g_iCheckStatus[ id ] == CHECK_CHANGE )    
  111.         {
  112.             new newname[32],oldname[32], text[512]
  113.             get_user_info(id, "name", newname,31)
  114.             get_user_name(id, oldname,31)
  115.                
  116.             if( !equal( newname, oldname)         &&  !IsNameValid(newname ) )        
  117.             {  
  118.                 AntiReklamaLog( id, "Reklama je bila u imenu..." )
  119.                 format(text,511,"%s Anti Reklama", pCvar_Prefix)
  120.                 set_user_info( id, g_szNameKey, text)
  121.                 AntiReklamaPunish( id )
  122.                 AntiReklamaMotd( id )
  123.             }    
  124.         }
  125.     }
  126. }
  127.  
  128. bool:IsNameValid( const szName[ ] )
  129. {    
  130.     new iCount
  131.     new iMax = get_pcvar_num( pCvar_MaxDigits )
  132.    
  133.     new i = -1
  134.     while( szName[ ++i ] )
  135.    
  136.     {        
  137.         if( '0' <= szName[ i ] <= '9' )        
  138.         {            
  139.             if( ++iCount >= iMax )            
  140.             {                
  141.                 return false
  142.             }        
  143.         }    
  144.     }        
  145.     return true
  146. }
  147.  
  148. public AntiReklamaLog( id, szMessage[] )
  149. {
  150.     new szName[ 32 ], szAuthID[ 32 ], szUserIP[ 32 ], szCountry[ 32 ]
  151.  
  152.     get_user_name( id, szName, 31 )
  153.     get_user_authid( id, szAuthID, 31 )
  154.     get_user_ip( id, szUserIP, 31, 1 )
  155.     geoip_country( szUserIP, szCountry )
  156.    
  157.     static szLogData[ 200 ]
  158.     formatex( szLogData, sizeof szLogData - 1, "Nick: %s | ID: %s | IP: %s | Zemlja: %s | %s", szName, szAuthID, szUserIP, szCountry, szMessage)
  159.     log_to_file( "antireklama.log", szLogData )
  160.     console_print( id, szLogData )
  161.  
  162.     return PLUGIN_HANDLED
  163. }
  164.  
  165. public AntiReklamaPunish(id)
  166. {
  167.     if ( get_pcvar_num(pCvar_Punish) == 2 )
  168.     {
  169.         client_cmd(id, "kill")
  170.     }
  171.     else if ( get_pcvar_num(pCvar_Punish) == 3 )
  172.     {
  173.         server_cmd("amx_kick #%d ^"Ako ovo nije bio pokusaj reklamiranja izvinjavamo se.^"",get_user_userid(id))
  174.     }
  175.     else if ( get_pcvar_num(pCvar_Punish) == 4 )
  176.     {
  177.         client_cmd(id, "quit")
  178.     }
  179.     else if ( get_pcvar_num(pCvar_Punish) == 5 )
  180.     {
  181.         server_cmd("amx_gag #%d 300 abc ",get_user_userid(id))
  182.     }   
  183.     else if ( get_pcvar_num(pCvar_Punish) == 6 )
  184.     {
  185.         server_cmd("amx_ban #%d 5 ^"Ako ovo nije bio pokusaj reklamiranja izvinjavamo se.^"",get_user_userid(id))
  186.     }   
  187. }
  188.  
  189. public AccessDenied(id)
  190.     client_cmd(id, "spk vox/denied.wav")
  191.  
  192. public menuItem( id )
  193. {    
  194.     if( !(get_user_flags( id ) & ACCESS ) )
  195.     {
  196.         ColorChat(id, TEAM_COLOR,"^4[%s] ^1Nemate pristup ovoj komandi!", pCvar_Prefix)
  197.         client_cmd(id, "spk vox/access.wav")       
  198.         set_task(0.6, "AccessDenied", id, _, _, "a", 1)
  199.         return PLUGIN_CONTINUE
  200.     }
  201.    
  202.     new status = (get_pcvar_num(pCvar_Status) == 1)
  203.     ON_OFF = status
  204.    
  205.     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\rAnti Reklama - Menu")
  206.     new menu = menu_create( pcvar_Menu, "menuAction" )
  207.        
  208.     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Status Plugina \r[\d%s\r]", (ON_OFF  & status) ? "Ukljucen" : "Iskljucen")
  209.     menu_additem( menu, pcvar_Menu, "0" )
  210.        
  211.     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Vrsta kazne \r[\d%i\r]", get_pcvar_num(pCvar_Punish))
  212.     menu_additem( menu, pcvar_Menu, "1" )    
  213.        
  214.     menu_display( id, menu )
  215.        
  216.     return PLUGIN_CONTINUE
  217. }
  218.  
  219. public menuAction( id, menu, item )
  220. {
  221.     if( item >= 0 )  
  222.     {
  223.         new access, callback, actionString[ 2 ]        
  224.         menu_item_getinfo( menu, item, access, actionString, charsmax( actionString ), _, _, callback )        
  225.          
  226.         new action = str_to_num( actionString )
  227.         {
  228.             switch( action )
  229.             {
  230.                 case 0:
  231.                 {
  232.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\rAnti Reklama - Menu")
  233.                     new menu = menu_create( pcvar_Menu, "menu1" )
  234.                    
  235.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Ukljuci Plugin")
  236.                     menu_additem( menu, pcvar_Menu, "0" )
  237.                    
  238.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Iskljuci Plugin")
  239.                     menu_additem( menu, pcvar_Menu, "1" )    
  240.                    
  241.                     menu_display( id, menu )
  242.                 }
  243.                  
  244.                 case 1:
  245.                 {
  246.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\rAnti Reklama - Menu")
  247.                     new menu = menu_create( pcvar_Menu, "menu2" )
  248.                    
  249.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Bez kazne")
  250.                     menu_additem( menu, pcvar_Menu, "0" )
  251.                
  252.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Kill")
  253.                     menu_additem( menu, pcvar_Menu, "1" )              
  254.                    
  255.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Kick")
  256.                     menu_additem( menu, pcvar_Menu, "2" )    
  257.  
  258.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Quit")
  259.                     menu_additem( menu, pcvar_Menu, "3" )  
  260.                
  261.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Gag 5 min")
  262.                     menu_additem( menu, pcvar_Menu, "4" )              
  263.                
  264.                     formatex( pcvar_Menu, charsmax( pcvar_Menu ), "\d Ban 5 min")
  265.                     menu_additem( menu, pcvar_Menu, "5" )   
  266.                
  267.                     menu_display( id, menu )  
  268.                 }
  269.             }
  270.         }    
  271.     }    
  272.     menu_destroy( menu )
  273.     return PLUGIN_HANDLED
  274. }
  275.  
  276. public menu1( id, menu, item )
  277. {
  278.     if( item >= 0 )  
  279.     {
  280.         new access, callback, actionString[ 2 ]        
  281.         menu_item_getinfo( menu, item, access, actionString, charsmax( actionString ), _, _, callback )        
  282.          
  283.         new action = str_to_num( actionString )
  284.         {
  285.             switch( action )
  286.             {
  287.                 case 0:
  288.                 {
  289.                     server_cmd("antireklama_status 1")
  290.                     ColorChat(0, TEAM_COLOR,"^4[%s] ^1Anti Reklama plugin je ukljucen!", pCvar_Prefix)
  291.                 }
  292.                  
  293.                 case 1:
  294.                 {
  295.                     server_cmd("antireklama_status 0")
  296.                     ColorChat(0, TEAM_COLOR,"^4[%s] ^1Anti Reklama plugin je iskljucen!", pCvar_Prefix)
  297.                 }
  298.             }
  299.         }    
  300.     }    
  301.     menu_destroy( menu )
  302.     set_task(0.1, "menuItem", id, _, _, "a", 1)
  303.     return PLUGIN_HANDLED
  304. }
  305.  
  306. public menu2( id, menu, item )
  307. {
  308.     if( item >= 0 )  
  309.     {
  310.         new access, callback, actionString[ 2 ]        
  311.         menu_item_getinfo( menu, item, access, actionString, charsmax( actionString ), _, _, callback )        
  312.          
  313.         new action = str_to_num( actionString )
  314.         {
  315.             switch( action )
  316.             {
  317.                 case 0:
  318.                 {
  319.                     server_cmd("antireklama_kazna 1")
  320.                 }
  321.                 case 1:
  322.                 {
  323.                     server_cmd("antireklama_kazna 2")
  324.                 }
  325.                 case 2:
  326.                 {
  327.                     server_cmd("antireklama_kazna 3")
  328.                 }  
  329.                 case 3:
  330.                 {
  331.                     server_cmd("antireklama_kazna 4")
  332.                 }
  333.                 case 4:
  334.                 {
  335.                     server_cmd("antireklama_kazna 5")
  336.                 }
  337.                 case 5:
  338.                 {
  339.                     server_cmd("antireklama_kazna 6")
  340.                 }      
  341.             }
  342.             ColorChat(id, TEAM_COLOR,"^4[%s] ^1Promene su uspesno sacuvane", pCvar_Prefix)
  343.         }    
  344.     }    
  345.     menu_destroy( menu )
  346.     set_task(0.1, "menuItem", id, _, _, "a", 1)
  347.     return PLUGIN_HANDLED
  348. }
  349.  
  350. public AntiReklamaMotd(id)
  351. {          
  352.     static motd[1501], len
  353.            
  354.     len = format(motd, 1500,"<body bgcolor=#000000><font color=#87cefa><pre>")
  355.     len += format(motd[len], 1500-len,"<h4 align='center'><font size='6' color='#FF0000'>%s Anti Reklama^n</font>", pCvar_Prefix)
  356.     len += format(motd[len], 1500-len,"<h4 align='center'><font size='4' color='#FFFFFF'>Zabranjeno Reklamiranje servera!</font>")         
  357.     len += format(motd[len], 1500-len,"<h4 align='center'><font size='4' color='#FFFFFF'>Ako ovo nije bio pokusaj reklamiranja izvinjavamo se.^n^n^n</font>")
  358.     len += format(motd[len], 1500-len,"<center><h4><font color=^"white^"><B>-----------------------</B> </font></h4></center>") 
  359.     len += format(motd[len], 1500-len,"<h4 align='center'><font size='1' color='#FF0000'><h4>Autor ->UrOS<-</h4></font>")
  360.     len += format(motd[len], 1500-len,"<h4 align='center'><font size='1' color='#FF0000'><h4>e-mail urosh@in.com</h4></font>")
  361.     len += format(motd[len], 1500-len,"<center><h4><font color=^"white^"><B>-----------------------</B> </font></h4></center>") 
  362.    
  363.     show_motd(id, motd, "Anti Reklama v3.0")
  364. }



_________________
Šaudyk.LT - „Siekime tikslo kartu. Tobulėkime“.
50% paramos atgavimas, 1 Gbps pralaidumas, Apsauga nuo DDoS.
Atsijungęs
 Aprašymas  
 
 Pranešimo tema: Re: Anti Reklama
Žinutės numeris: #2  StandartinėParašytas: 2015 Bal 26 21:52 
Flooderis arba specialistas
Vartotojo avataras

Užsiregistravo: 2014 Vas 19 18:40
Pranešimai: 735
Karma: 31
Siūlau naudoti paprastesnį Anti Reklama plugin


Prikabinti failai:
blockmsg.ini [27 Baitų]
Atsisiųsta 336 kartus(ų)
anti_ad.amxx [2.68 KiB]
Atsisiųsta 336 kartus(ų)
anti_ad.sma [1.79 KiB]
Atsisiųsta 375 kartus(ų)

_________________
Paveikslėlis
Atsijungęs
 Aprašymas  
 
 Pranešimo tema: Re: Anti Reklama
Žinutės numeris: #3  StandartinėParašytas: 2018 Gru 31 01:32 
O taip. Jis jau surinko 50 žinučių!

Užsiregistravo: 2015 Kov 10 19:13
Pranešimai: 89
Karma: 0
ArtHa123 rašė:
Siūlau naudoti paprastesnį Anti Reklama plugin

Galima sita plugina papildyt taip kad jis keistu nick su reklama. Bet kad tekstas butu kitas nei tas kur chate keiciamas.

P.S Sorry kad sena tema prikeliu.



_________________
Paveikslėlis
Atsijungęs
 Aprašymas  
 
Rodyti paskutinius pranešimus:  Rūšiuoti pagal  
 Puslapis 11 [ 3 pranešimai(ų) ] 


Dabar prisijungę

Vartotojai naršantys šį forumą: Registruotų vartotojų nėra ir 6 svečių


Jūs negalite kurti naujų temų šiame forume
Jūs negalite atsakinėti į temas šiame forume
Jūs negalite redaguoti savo pranešimų šiame forume
Jūs negalite trinti savo pranešimų šiame forume
Jūs negalite prikabinti failų šiame forume

Ieškoti:
Pereiti į:  

cron