SA-MP Forums Archive
[Ajuda]Antpalavrгo - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda]Antpalavrгo (/showthread.php?tid=269690)



[Ajuda]Antpalavrгo - Fireblad - 17.07.2011

Ola garela Peguei esse sistema aqui no forun mais qro mudar ele alguem faz ideia como posso fazer para quando um jogador falar um palavrгo ele receber um aviso de (1/3) e no (3/3) ele e kickado
Код:
new sizes = strlen(text),zString[128];
    format(zString,128,text);

    //Anti Burlamento Palavreado
    for(new st = 0; st < sizes; st++) {
        if(zString[ st ] == '4') zString[ st ] = 'a';
        if(zString[ st ] == '3') zString[ st ] = 'e';
        if(zString[ st ] == '5') zString[ st ] = 's';
        if(zString[ st ] == '8') zString[ st ] = 'b';
        if(zString[ st ] == '7') zString[ st ] = 't';
        if(zString[ st ] == '0') zString[ st ] = 'o';
        if(zString[ st ] == '1') zString[ st ] = 'i';
    }
    new cs;
    for( new st = 0 ; st < 23; st++) {
        if((zString[ st ]>='a' && zString[ st ]<='z') || (zString[ st ]>='A' && zString[ st ]<='Z')) {
            if(! cs || ( cs && zString[ cs - 1 ] != zString[ st ])) {
                zString[ cs ] = zString[ st ];
                cs++;
            }
        }
        if( cs >= zString[ st ])
            break;
    }
    for(new s = 0 ; s <= 23;++ s) SearchTrue(zString,Word[ s ]) {
        SendClientMessage(playerid,0xC9170EFF,"[ERRO] Favor cuidado com o que fale (Suspeita de Palavreado)");
        return false;
    }
Obs: Fs https://sampforum.blast.hk/showthread.php?tid=176392


Re: [Ajuda]Antpalavrгo - Fireblad - 17.07.2011

Ninguem GALERA ?


Re: [Ajuda]Antpalavrгo - ScRaT - 17.07.2011

ve como fizeram o cmd /warn no luxadmin


Re: [Ajuda]Antpalavrгo - rjjj - 17.07.2011

Isto deve resolver o seu problema .


Coloque :


pawn Код:
//No Topo do seu GM/FS:

new AvisosPlayer[MAX_PLAYERS];


E em seguida, use este cуdigo ao invйs do que vocк postou .


Код:
new sizes = strlen(text),zString[128];
    format(zString,128,text);

    //Anti Burlamento Palavreado
    for(new st = 0; st < sizes; st++) {
        if(zString[ st ] == '4') zString[ st ] = 'a';
        if(zString[ st ] == '3') zString[ st ] = 'e';
        if(zString[ st ] == '5') zString[ st ] = 's';
        if(zString[ st ] == '8') zString[ st ] = 'b';
        if(zString[ st ] == '7') zString[ st ] = 't';
        if(zString[ st ] == '0') zString[ st ] = 'o';
        if(zString[ st ] == '1') zString[ st ] = 'i';
    }
    new cs;
    for( new st = 0 ; st < 23; st++) {
        if((zString[ st ]>='a' && zString[ st ]<='z') || (zString[ st ]>='A' && zString[ st ]<='Z')) {
            if(! cs || ( cs && zString[ cs - 1 ] != zString[ st ])) {
                zString[ cs ] = zString[ st ];
                cs++;
            }
        }
        if( cs >= zString[ st ])
            break;
    }
    for(new s = 0 ; s <= 23;++ s) SearchTrue(zString,Word[ s ]) {
        new formtxt[42];
        format(formtxt,42,"[ERRO] Recebeu um Aviso por Isso (%d/3).!",++AvisosPlayer[playerid]);
        SendClientMessage(playerid,0xC9170EFF,"[ERRO] Favor cuidado com o que fale (Suspeita de Palavreado)");
        SendClientMessage(playerid,0xFFFF00AA,formtxt);
        if(AvisosPlayer[playerid] == 3) SendClientMessage(playerid,0x33CCFFAA, "Kickado por acÑŠmulo de avisos !"),Kick(playerid);
        return false;
    }

Espero ter ajudado .


Re: [Ajuda]Antpalavrгo - Fireblad - 17.07.2011

rjj fico perfeito esse man mais oq estou tentando fazer й aquele q manda a msg O Administrador avisou o jogador: %s. (Motivo: respeito - (%d/3)" tipo como c fosse o comando /aviso [id] [motivo]


Re: [Ajuda]Antpalavrгo - Nake01 - 17.07.2011

Tenta
Код:
        if(strcmp(cmd, "/aviso", true) == 0)
        {
            GetPlayerName(playerid, sendername, sizeof(sendername));
                new str[256];
                tmp = strtok(cmdtext, idx);
                tmp2 = strtok(cmdtext, idx);

                if(!strlen(tmp) && PlayerInfo[playerid][Admin] >= 1)
                {
                        SendClientMessage(playerid, COLOR_GREEN, "Uso correto: /aviso [id do player] [motivo]");
                        return 1;
                }
                giveplayerid = strval(tmp);
                giveplayerid = strval(tmp);
                if(logado[playerid] == 1)
                {
                        if(PlayerInfo[playerid][Admin] >= 1)
                        {
                                if(WarnedTimes[giveplayerid] == 0)
                                {
                                        WarnedTimes[giveplayerid]+=1;
                                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                        GetPlayerName(playerid, sendername, sizeof (sendername));
                                        format(str, sizeof (str), "{FFFF00}Adm.Cmd:{FF8000} %s foi avisado por: %s , [motivo: %s] [1/3 Avisos]", giveplayer, sendername, cmdtext[8]);
                                        SendClientMessageToAll(COLOR_ADM, str);
                                        print(str);
                                        return 1;
                                }
                                if(WarnedTimes[giveplayerid] == 1)
                                {
                                    WarnedTimes[giveplayerid]+=1;
                                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                        GetPlayerName(playerid, sendername, sizeof (sendername));
                                        format(str, sizeof (str), "{FFFF00}Adm.Cmd:{FF8000} %s foi avisado por: %s , [motivo: %s] [2/3 Avisos]", giveplayer, sendername, cmdtext[8]);
                                        SendClientMessageToAll(COLOR_ADM, str);
                                        print(str);
                                        return 1;
                                }
                                else if(WarnedTimes[giveplayerid] == 2)
                                {
                                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                        GetPlayerName(playerid, sendername, sizeof (sendername));
                                        format(str, sizeof (str), "{FFFF00}Adm.Cmd:{FF0000} %s foi BANIDO por %s, [motivo: %s] [3/3 Avisos]", giveplayer, sendername, cmdtext[8]);
                                        SendClientMessageToAll(COLOR_ADM, str);
                                        Kick(giveplayerid);
                                        return 1;
                                }
                        }
                        else
                        {
                                SendClientMessage(playerid, COLOR_CYAN, "Vocк nгo tem permissгo para usar este comando!!");
                                return 1;
                        }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_CYAN, "Vocк tem que estar logado para usar este comando!");
                }
        }
Espero ter ajudado !