Raised This Month: $51 Target: $400
 12% 

[ES] Nuevo plugin que blockea insultos.


  
 
 
Thread Tools Display Modes
Author Message
g_often
Senior Member
Join Date: Jan 2010
Location: In your mind
Old 01-15-2010 , 04:06   [ES] Nuevo plugin que blockea insultos.
#1

no me supe expresar bien en el título xD!

bueno, la escuestión es que hice un plugin que blockea algunos insultos... es muy cortito pero me sirvió de práctica... porfavor si me pueden consejos
gracias.
Attached Files
File Type: inc insulto.inc (304 Bytes, 303 views)
File Type: sma Get Plugin or Get Source (insulto.sma - 945 views - 457 Bytes)

Last edited by g_often; 01-15-2010 at 06:12.
g_often is offline
capostrike93
Veteran Member
Join Date: Feb 2009
Location: adios y??
Old 01-15-2010 , 04:23   Re: [ES] Nuevo plugin que blockea insultos.
#2

la parte de las palabras pss esta bien pero lo de disque block de spam ips muy mal


tata dice: hola cuantos años tienes?
tete dice 10 y tu?
kick a tete...
__________________
capostrike93 is offline
g_often
Senior Member
Join Date: Jan 2010
Location: In your mind
Old 01-15-2010 , 05:58   Re: [ES] Nuevo plugin que blockea insultos.
#3

ahí está... la re flashie xD

Last edited by g_often; 01-15-2010 at 06:01.
g_often is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-15-2010 , 06:12   Re: [ES] Nuevo plugin que blockea insultos.
#4

Que sentido tiene poner un include o.o
01101101 is offline
g_often
Senior Member
Join Date: Jan 2010
Location: In your mind
Old 01-15-2010 , 06:15   Re: [ES] Nuevo plugin que blockea insultos.
#5

la verdad ni idea, pero si vos por ejemplo tenés el amxx nomás y tenés este include, se lo podés modificar desde afuera xD... en este caso nomás

EDIT:
En todo caso sería...

PHP Code:
#include <amxmodx>

#define g_kick server_cmd("kick #%d ^"No podes insultar aqui^"", get_user_userid(index) );

public plugin_init() {
    
register_plugin("insulto = Kick""0.0.1""g_often")
    
    
register_clcmd("say""block_insultos");
    
register_clcmd("say_team""block_insultos");
}

stock const puteadas[][] = {
    
"puto",
    
"gay",
    
"hijo de puta",
    
"lesbiana",
    
"cojido",
    
"gordo",
    
"trolo",
    
"petero",
    
"imbecil"
    
// etc..
}

public 
block_insultosindex ){
    new 
Args621 ], insultos;
    
read_args(Args620);
    
    for(new 
sizeof (puteadas) ; i++) if(containi(Argsputeadas[i]) != -1insultos++
    
    if(
insultos >= g_kick
    
    
return 0;


Last edited by g_often; 01-15-2010 at 06:17.
g_often is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-15-2010 , 06:36   Re: [ES] Nuevo plugin que blockea insultos.
#6

Quote:
Originally Posted by g_often View Post
la verdad ni idea, pero si vos por ejemplo tenés el amxx nomás y tenés este include, se lo podés modificar desde afuera xD... en este caso nomás

EDIT:
En todo caso sería...

PHP Code:
#include <amxmodx>

#define g_kick server_cmd("kick #%d ^"No podes insultar aqui^"", get_user_userid(index) );

public plugin_init() {
    
register_plugin("insulto = Kick""0.0.1""g_often")
    
    
register_clcmd("say""block_insultos");
    
register_clcmd("say_team""block_insultos");
}

stock const puteadas[][] = {
    
"puto",
    
"gay",
    
"hijo de puta",
    
"lesbiana",
    
"cojido",
    
"gordo",
    
"trolo",
    
"petero",
    
"imbecil"
    
// etc..
}

public 
block_insultosindex ){
    new 
Args621 ], insultos;
    
read_args(Args620);
    
    for(new 
sizeof (puteadas) ; i++) if(containi(Argsputeadas[i]) != -1insultos++
    
    if(
insultos >= g_kick
    
    
return 0;

El include lo usa nada mas al momento de compilar. Por mas que lo toques despues el texto va a ser el mismo.
01101101 is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-15-2010 , 06:41   Re: [ES] Nuevo plugin que blockea insultos.
#7

Quote:
Originally Posted by g_often View Post
la verdad ni idea, pero si vos por ejemplo tenés el amxx nomás y tenés este include, se lo podés modificar desde afuera xD... en este caso nomás

EDIT:
En todo caso sería...

PHP Code:
#include <amxmodx>

#define g_kick server_cmd("kick #%d ^"No podes insultar aqui^"", get_user_userid(index) );

public plugin_init() {
    
register_plugin("insulto = Kick""0.0.1""g_often");
    
    
register_clcmd("say""block_insultos");
    
register_clcmd("say_team""block_insultos");
}

stock const puteadas[][] = {
    
"puto",
    
"gay",
    
"hijo de puta",
    
"lesbiana",
    
"cojido",
    
"gordo",
    
"trolo",
    
"petero",
    
"imbecil"
    
// etc..
}

public 
block_insultosindex ){
    new 
Args621 ], insultos;
    
read_args(Args620);
    
    for(new 
sizeof (puteadas) ; i++) if(containi(Argsputeadas[i]) != -1insultos++
    
    if(
insultos >= g_kick
    
    
return 0;

PHP Code:
#include <amxmodx>
#pragma semicolon 1
new const mensaje_kick[] = "Kickeado por putear"

public plugin_init() {
    
register_plugin("insulto = Kick""0.0.1""g_often");
    
    
register_clcmd("say""block_insultos");
    
register_clcmd("say_team""block_insultos");
}

const 
puteadas[][] = {
    
"puto",
    
"gay",
    
"hijo de puta",
    
"lesbiana",
    
"cojido",
    
"gordo",
    
"trolo",
    
"petero",
    
"imbecil"
    
// etc..
}

public 
block_insultosindex ){
    new 
Args621 ], insultos;
    
read_args(Args620);
    
    for(new 
sizeof (puteadas) ; i++){
        if(
containi(Argsputeadas[i]) != -1){
            
emessage_begin(MSG_ONESVC_DISCONNECT_index); 
            
ewrite_stringmensaje_kick ); 
            
emessage_end(); 
            return 
1;
        }
    }
    return 
0;

PD: El return 1 hara que bloquee lo que dice.

Last edited by 01101101; 01-15-2010 at 07:27.
01101101 is offline
Zapdos1
BANNED
Join Date: Jul 2009
Location: Chile - La Serena
Old 01-15-2010 , 06:58   Re: [ES] Nuevo plugin que blockea insultos.
#8

intenta hacer que uno escriba los insultos desde un archivo, más fácil para el admin del server
Zapdos1 is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-15-2010 , 07:16   Re: [ES] Nuevo plugin que blockea insultos.
#9

Quote:
Originally Posted by Zapdos1 View Post
intenta hacer que uno escriba los insultos desde un archivo, más fácil para el admin del server
Tendria que quedar algo asi (no lo probe y tengo mucho sueño)

PHP Code:
#include <amxmodx>
#include <amxmisc>
new const mensaje_kick[] = "Kickeado por putear"

public plugin_init() 
{
    
register_plugin("insulto = Kick""0.0.1""g_often")
    
register_clcmd("say""block_insultos")
    
register_clcmd("say_team""block_insultos")
    
cargar_insultos()
}

new 
g_insultos[32][64]
new 
g_insultos_i

public block_insultos(index)
{
    new 
Args[621]
    
read_args(Args620)
    
    for(new 
g_insultos_i-i++)
    {
        if(
containi(Argsg_insultos[i]) != -1)
        {
            
emessage_begin(MSG_ONESVC_DISCONNECT_index)
            
ewrite_stringmensaje_kick )
            
emessage_end()
            return 
1
        
}
    }
    return 
0
}  


public 
cargar_insultos() 
{
    new 
archivo[32], file_insultos[64]
    
get_configsdir(archivo,31)
    
formatex(file_insultos,63,"%s/insultos.ini"archivo)
    if(
file_exists(file_insultos)) 
    {
        new 
linea[128]
        new 
file fopen(file_insultos"rt")
        while(
file && !feof(file)) 
        {
            
fgets(filelinea127)
            
replace(linea127"^n""")
            
// Nos salteamos las lineas vacias, puntos y comas y //
            
if ((linea[0] == '/' && linea[1] == '/') || linea[0] == ';' || strlen(linea) < 1) continue
            
            
copy(g_insultos[g_insultos_i++], 31linea)
        }
        if(
filefclose(file)
    }

Igual tendria que estar hecho con arraycell pero se va a confundir mucho el pibe usando arraycell.

Despues talvez deje una version con arraycel.

Last edited by 01101101; 01-17-2010 at 01:22.
01101101 is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-15-2010 , 07:26   Re: [ES] Nuevo plugin que blockea insultos.
#10

Version con ArrayCell (Si bien es mas lenta, permite infinitos puteadas, es la version ideal esta)

PHP Code:
#include <amxmodx>
#include <amxmisc>

new const mensaje_kick[] = "Kickeado por putear"
new Array:g_insultos

public plugin_init() 
{
    
register_plugin("insulto = Kick""0.0.1""g_often")
    
register_clcmd("say""block_insultos")
    
register_clcmd("say_team""block_insultos")
    
g_insultos ArrayCreate(321)
    
cargar_insultos()
}

public 
block_insultos(index)
{
    new 
Args[621], buffer[32]
    
read_args(Args620)
    
    for(new 
ArraySize(g_insultos) ; i++)
    {
        
ArrayGetString(g_insultosibuffer31)
        if(
containi(Argsbuffer) != -1)
        {
            
emessage_begin(MSG_ONESVC_DISCONNECT_index)
            
ewrite_stringmensaje_kick )
            
emessage_end()
            return 
1
        
}
    }
    return 
0
}  


public 
cargar_insultos() 
{
    new 
archivo[32], file_insultos[64]
    
get_configsdir(archivo,31)
    
formatex(file_insultos,63,"%s/insultos.ini"archivo)
    if(
file_exists(file_insultos)) 
    {
        new 
linea[128]
        new 
file fopen(file_insultos"rt")
        while(
file && !feof(file)) 
        {
            
fgets(filelinea127)
            
replace(linea127"^n""")
            
// Nos salteamos las lineas vacias, puntos y comas y //
            
if ((linea[0] == '/' && linea[1] == '/') || linea[0] == ';' || strlen(linea) < 1) continue
            
            
ArrayPushString(g_insultoslinea)
        }
        if(
filefclose(file)
    }

EDIT: Si alguien esta interesado en que haga comodines, como por ejemplo en el .ini pones hij@ de put@ y bloquea tanto 'hijo de puta', 'hijo de puto', 'hija de puta' como 'hijo de puto'

Last edited by 01101101; 01-17-2010 at 01:22.
01101101 is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 17:26.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode