SA-MP Forums Archive
[Ajuda]Aviso - 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]Aviso (/showthread.php?tid=338233)



[Ajuda]Aviso - Mteck - 29.04.2012

pawn Код:
if(strcmp(cmd, "/aviso", true) == 0)
    {
        //if(adminservico[playerid] == 0) return SendClientMessage(playerid, -1, "Vocк nгo estб trabalhando use (/sa ou /servicoadmin) para trabalhar..");//Verifica se o player ta trabalhando..
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /aviso [id] [motivo]");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            if (PlayerInfo[playerid][pAdmin] >= 2)
            {
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        new length = strlen(cmdtext);
                        while ((idx < length) && (cmdtext[idx] <= ' '))
                        {
                            idx++;
                        }
                        new offset = idx;
                        new result[64];
                        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
                        {
                            result[idx - offset] = cmdtext[idx];
                            idx++;
                        }
                        result[idx - offset] = EOS;
                        if(!strlen(result))
                        {
                            SendClientMessage(playerid, COLOR_GRAD2, "USE: /aviso [id] [motivo]");
                            return 1;
                        }
                        PlayerInfo[giveplayerid][pWarns] += 1;
                        if(PlayerInfo[giveplayerid][pWarns] >= 3)
                        {
                            getdate(year, month, day);
                            if(admtrampando[playerid] == 1 && admhide[playerid] == 1)
                            {
                                format(string, sizeof(string), "[E.z Adm]: %s foi banido Automaticamente, Motivo: %s (%d-%d-%d)", giveplayer, (result),day,month,year);
                                BanLog(string);
                                format(string, sizeof(string), "[E.z Adm]: %s foi banido Automaticamente |Tinha 3 Avisos|, Motivo: %s", giveplayer,(result));
                                MSGPARATODOS(COLOR_LIGHTRED, string);
                            }
                            return 1;
                                    }

                        format(string, sizeof(string), "[E.z Adm]: %s foi avisado por %s, Motivo: %s", giveplayer, sendername, (result));
                        MSGPARATODOS(COLOR_LIGHTRED, string);
                        return 1;
                    }
                }//not connected
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD1, "   Esse nгo й um jogador ativo.");
            }
        }
        return 1;
    }
Tipo executo os 3 avisos mais sу vai atй o dois e o player nгo й banido..


Re: [Ajuda]Aviso - ViniBorn - 29.04.2012

Nгo tem nenhuma funзгo de ban aн. Coloque.


Re: [Ajuda]Aviso - Mteck - 29.04.2012

pawn Код:
if(strcmp(cmd, "/aviso", true) == 0)
    {
        //if(adminservico[playerid] == 0) return SendClientMessage(playerid, -1, "Vocк nгo estб trabalhando use (/sa ou /servicoadmin) para trabalhar..");//Verifica se o player ta trabalhando..
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /aviso [id] [motivo]");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            if (PlayerInfo[playerid][pAdmin] >= 2)
            {
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        new length = strlen(cmdtext);
                        while ((idx < length) && (cmdtext[idx] <= ' '))
                        {
                            idx++;
                        }
                        new offset = idx;
                        new result[64];
                        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
                        {
                            result[idx - offset] = cmdtext[idx];
                            idx++;
                        }
                        result[idx - offset] = EOS;
                        if(!strlen(result))
                        {
                            SendClientMessage(playerid, COLOR_GRAD2, "USE: /aviso [id] [motivo]");
                            return 1;
                        }
                        PlayerInfo[giveplayerid][pWarns] += 1;
                        if(PlayerInfo[giveplayerid][pWarns] >= 4)
                        {
                            getdate(year, month, day);
                            if(admtrampando[playerid] == 1 && admhide[playerid] == 1)
                            {
                                format(string, sizeof(string), "[E.z Adm]: %s foi banido Automaticamente, Motivo: %s (%d-%d-%d)", giveplayer, (result),day,month,year);
                                BanLog(string);
                                format(string, sizeof(string), "[E.z Adm]: %s foi banido Automaticamente |Tinha 3 Avisos|, Motivo: %s", giveplayer,(result));
                                MSGPARATODOS(COLOR_LIGHTRED, string);
                            }
                            Ban(giveplayerid);
                            return 1;
                                    }

                        format(string, sizeof(string), "[E.z Adm]: %s foi avisado por %s, Motivo: %s", giveplayer, sendername, (result));
                        MSGPARATODOS(COLOR_LIGHTRED, string);
                        return 1;
                    }
                }//not connected
            }
            else
            {
                SendClientMessage(playerid, COLOR_GRAD1, "   Esse nгo й um jogador ativo.");
            }
        }
        return 1;
    }
correto
?


Re: [Ajuda]Aviso - ViniBorn - 29.04.2012

Sim.


Re: [Ajuda]Aviso - Mteck - 29.04.2012

Vini, a Maioria dos comandos apareec Unknow comand porque isso? o.O


Re: [Ajuda]Aviso - ViniBorn - 29.04.2012

Ou o comando nгo tem return , ou o cуdigo tem um erro que nгo o deixa se executar por completo.


Re: [Ajuda]Aviso - FallenHtz - 29.04.2012

veja o SBan , ou veja se ta pegando o dia .
pawn Код:
SBan(giveplayerid, "Terceiro aviso", sendername);
E precisa ver se estб salvando os avisos .