[Ajuda] Nнvel de procura
#1

Tipo pessoal, quero uma ajuda aquiw pf, tipo, o caraw tб com 8 de procurado ae ele vai ficar 40 minutos preso, ou seja, 5 minutos = 1 su..

queria colocar pra quando prender um jogador ele ir preso automaticamente pelo nivel de su dele, mais nгo consigo, ae tipo.. o pm sу dб /prender [id] [Fianзa (0=nгo 1=sim)]

o preзo da fianзa serб o su dele convertido em sei lб quantos, tipo sei lб, queria deixar rp.. alguem?

obs: sendo assim PlayerInfo[suspect][pWantedLevel] como quantia de su

pawn Код:
new Quantia = PlayerInfo[suspect][pWantedLevel];

pawn Код:
if(strcmp(cmd,"/prender",true) == 0) // https://sampforum.blast.hk/showthread.php?tid=519999
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pMembro]==1||PlayerInfo[playerid][pLider] == 1||PlayerInfo[playerid][pMembro]== 2||PlayerInfo[playerid][pLider] == 2||PlayerInfo[playerid][pMembro]== 3||PlayerInfo[playerid][pLider] == 3||PlayerInfo[playerid][pMembro]== 10||PlayerInfo[playerid][pLider] == 10)
            {
                if(OnDuty[playerid] != 1 && GetPlayerOrg(playerid) != 2)
                {
                    SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Vocк nгo bateu seu cartгo.");
                    return true;
                }
                if(!PlayerToPoint(6.0, playerid, 268.3378,77.7951,1001.0391) && !PlayerToPoint(7.0, playerid, 198.3743,179.6484,1003.0315))
                {// Jail spot
                    SendClientMessage(playerid, COLOR_GRAD1,"ERRO: Vocк nгo esta perto da cela, entгo nгo pode prende-lo.");
                    return true;
                }
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Tempo em Segundos] [Fianзa (0=nгo 1=sim)] [Preзo da fianзa]");
                    return true;
                }
                new suspect = ReturnUser(tmp);
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Tempo em Segundos] [Fianзa (0=nгo 1=sim)] [Preзo da fianзa]");
                    return true;
                }
                new time = strval(tmp);
                if(time < 1 || time > 45) { SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Tempo de prisгo entrem 1 a 45 minutos."); return true; }
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Tempo em Segundos] [Fianзa (0=nгo 1=sim)] [Preзo da fianзa]");
                    return true;
                }
                new bail = strval(tmp);
                if(bail < 0 || bail > 1) { SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Escolha fianзa '0 = Nгo' ou '1 = Sim'."); return true; }
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Tempo em Segundos] [Fianзa (0=nгo 1=sim)] [Preзo da fianзa]");
                    return true;
                }
                new bailprice = strval(tmp);
                if(bailprice < 100 || bailprice > 10000) { SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Preзo da fianзa de $100 ate $10000."); return true; }
                if(IsPlayerConnected(suspect))
                {
                    if(GetDistanceBetweenPlayers(playerid,suspect) < 10)
                    {
                        GetPlayerName(suspect,giveplayer,sizeof(giveplayer));
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        if(PlayerInfo[suspect][pWantedLevel] < 1)
                        {
                            SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Personagem deve ter nivel de procurado no minimo 1.");
                            return true;
                        }
                        ResetPlayerWeapons(suspect);
                        ResetarArmas(suspect);
                        PlayerInfo[suspect][pMaconha] = 0;
                        PlayerInfo[suspect][pMats] = 0;
                        Telefoneoff[suspect] = 1;
                        if(PlayerInfo[playerid][pMembro]==1||PlayerInfo[playerid][pLider]==1)
                        {
                            format(string,sizeof(string),"HQ: %s (Polнcia Militar) prendeu o suspeito %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                            OOCNews(TEAM_BLUE_COLOR,string);
                        }
                        else if(PlayerInfo[playerid][pMembro]==2||PlayerInfo[playerid][pLider]==2)
                        {
                            format(string,sizeof(string),"HQ: %s (Polнcia Civil) prendeu o suspeito %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                            OOCNews(TEAM_BLUE_COLOR,string);
                        }
                        else if(PlayerInfo[playerid][pMembro]==3||PlayerInfo[playerid][pLider]==3)
                        {
                            format(string,sizeof(string),"HQ: %s (Exйrcito) prendeu o suspeito %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                            OOCNews(TEAM_BLUE_COLOR,string);
                        }
                        if(PlayerToPoint(6.0, playerid, 268.3378,77.7951,1001.0391))
                        {
                            PlayerInfo[suspect][pJailed] = 1; // ID cadeia da PMLV
                            PlayerInfo[suspect][pJailTime] = time * 60;
                            PlayerInfo[suspect][pArrested] += 1;
                            SetPlayerInterior(suspect,6);
                            SetPlayerPos(suspect, 264.6288,77.5742,1001.0391);
                            SetPlayerFree(suspect,playerid,"Preso");
                            PlayerInfo[suspect][pWantedLevel] = 0;
                            if(bail == 1)
                            {
                                JailPrice[suspect] = bailprice;
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: $%d.",PlayerInfo[suspect][pJailTime],JailPrice[suspect]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                SendClientMessage(suspect,COLOR_WHITE,"Use '/Serviзo Advogado' para chamar um advogado ou '/PagarFianзa' para pagar fianзa.");
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                            else
                            {
                                JailPrice[suspect] = 0;
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: Indisponivel.",PlayerInfo[suspect][pJailTime]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                        }
                        if(PlayerToPoint(6.0, playerid, 198.3743,179.6484,1003.0315))
                        {
                            PlayerInfo[suspect][pJailed] = 3; // Coloca aqui o id da Poder Judiciбrio
                            PlayerInfo[suspect][pJailTime] = time * 60;
                            PlayerInfo[suspect][pArrested] += 1;
                            SetPlayerInterior(suspect,3);
                            SetPlayerPos(suspect, 198.3743,175.6484,1003.0315);
                            SetPlayerFree(suspect,playerid,"Preso");
                            PlayerInfo[suspect][pWantedLevel] = 0;
                            if(bail == 1)
                            {
                                JailPrice[suspect] = bailprice;
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: $%d.",PlayerInfo[suspect][pJailTime],JailPrice[suspect]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                SendClientMessage(suspect,COLOR_WHITE,"Use '/Serviзo Advogado' para chamar um advogado ou '/PagarFianзa' para pagar fianзa.");
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                            else
                            {
                                JailPrice[suspect] = 0;
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: Indisponivel.",PlayerInfo[suspect][pJailTime]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid,COLOR_GRAD1,"ERRO: ID/invбlido.");
                    return true;
                }
            }
            else
            {
                SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Acesso restrito apenas a policiais.");
                return true;
            }
        }
        return true;
    }
tanto cуdigo que fico loko..
Reply
#2

PHP код:
new Quantia PlayerInfo[suspect][pWantedLevel];
PlayerInfo[suspect][pJailTime] = Quantia*5*60000
Acho que й essa variбvel que vc usa.. sу substituir
Reply
#3

Entгo amigo, como faзo para tirar aquilo ali, tempo em segundos, tipo de fianзa, sei lб, dб erros e bug tudo, o que faзo para fica adpatado para /prender [ID/Nome] [Fianзa (0=nгo 1=sim)]? pf amigo Jonathan..
Reply
#4

testa aew:

Код:
if(strcmp(cmd,"/prender",true) == 0) // https://sampforum.blast.hk/showthread.php?tid=519999
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pMembro]==1||PlayerInfo[playerid][pLider] == 1||PlayerInfo[playerid][pMembro]== 2||PlayerInfo[playerid][pLider] == 2||PlayerInfo[playerid][pMembro]== 3||PlayerInfo[playerid][pLider] == 3||PlayerInfo[playerid][pMembro]== 10||PlayerInfo[playerid][pLider] == 10)
            {
                if(OnDuty[playerid] != 1 && GetPlayerOrg(playerid) != 2)
                {
                    SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Vocк nгo bateu seu cartгo.");
                    return true;
                }
                if(!PlayerToPoint(6.0, playerid, 268.3378,77.7951,1001.0391) && !PlayerToPoint(7.0, playerid, 198.3743,179.6484,1003.0315))
                {// Jail spot
                    SendClientMessage(playerid, COLOR_GRAD1,"ERRO: Vocк nгo esta perto da cela, entгo nгo pode prende-lo.");
                    return true;
                }
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Fianзa (0=nгo 1=sim)]");
                    return true;
                }
                new suspect = ReturnUser(tmp);
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Fianзa (0=nгo 1=sim)]");
                    return true;
                }
                new bail = strval(tmp);
                if(bail < 0 || bail > 1) { SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Escolha fianзa '0 = Nгo' ou '1 = Sim'."); return true; }
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid,COLOR_WHITE,"USE: /prender [ID/Nome] [Fianзa (0=nгo 1=sim)]");
                    return true;
                }
                if(IsPlayerConnected(suspect))
                {
                    new Quantia = PlayerInfo[suspect][pWantedLevel];
                    if(GetDistanceBetweenPlayers(playerid,suspect) < 10)
                    {
                        GetPlayerName(suspect,giveplayer,sizeof(giveplayer));
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        if(PlayerInfo[suspect][pWantedLevel] < 1)
                        {
                            SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Personagem deve ter nivel de procurado no minimo 1.");
                            return true;
                        }
                        ResetPlayerWeapons(suspect);
                        ResetarArmas(suspect);
                        PlayerInfo[suspect][pMaconha] = 0;
                        PlayerInfo[suspect][pMats] = 0;
                        Telefoneoff[suspect] = 1;
                        if(PlayerInfo[playerid][pMembro]==1||PlayerInfo[playerid][pLider]==1)
                        {
                            format(string,sizeof(string),"HQ: %s (Polнcia Militar) prendeu o suspeito %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                            OOCNews(TEAM_BLUE_COLOR,string);
                        }
                        else if(PlayerInfo[playerid][pMembro]==2||PlayerInfo[playerid][pLider]==2)
                        {
                            format(string,sizeof(string),"HQ: %s (Polнcia Civil) prendeu o suspeito %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                            OOCNews(TEAM_BLUE_COLOR,string);
                        }
                        else if(PlayerInfo[playerid][pMembro]==3||PlayerInfo[playerid][pLider]==3)
                        {
                            format(string,sizeof(string),"HQ: %s (Exйrcito) prendeu o suspeito %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                            OOCNews(TEAM_BLUE_COLOR,string);
                        }
                        if(PlayerToPoint(6.0, playerid, 268.3378,77.7951,1001.0391))
                        {
                            PlayerInfo[suspect][pJailed] = 1; // ID cadeia da PMLV
                            PlayerInfo[suspect][pJailTime] = Quantia * 300; // Nivel de procurado x 500(5mins)
                            PlayerInfo[suspect][pArrested] += 1;
                            SetPlayerInterior(suspect,6);
                            SetPlayerPos(suspect, 264.6288,77.5742,1001.0391);
                            SetPlayerFree(suspect,playerid,"Preso");
                            PlayerInfo[suspect][pWantedLevel] = 0;
                            if(bail == 1)
                            {
                                JailPrice[suspect] = Quantia * 500; // R$ 500 por nivel de procurado
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: $%d.",PlayerInfo[suspect][pJailTime],JailPrice[suspect]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                SendClientMessage(suspect,COLOR_WHITE,"Use '/Serviзo Advogado' para chamar um advogado ou '/PagarFianзa' para pagar fianзa.");
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                            else
                            {
                                JailPrice[suspect] = 0;
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: Indisponivel.",PlayerInfo[suspect][pJailTime]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                        }
                        if(PlayerToPoint(6.0, playerid, 198.3743,179.6484,1003.0315))
                        {
                            PlayerInfo[suspect][pJailed] = 3; // Coloca aqui o id da Poder Judiciбrio
                            PlayerInfo[suspect][pJailTime] = Quantia * 300; // Nivel de procurado x 500(5mins)
                            PlayerInfo[suspect][pArrested] += 1;
                            SetPlayerInterior(suspect,3);
                            SetPlayerPos(suspect, 198.3743,175.6484,1003.0315);
                            SetPlayerFree(suspect,playerid,"Preso");
                            PlayerInfo[suspect][pWantedLevel] = 0;
                            if(bail == 1)
                            {
                                JailPrice[suspect] = Quantia * 500; // R$ 500 por nivel de procurado
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: $%d.",PlayerInfo[suspect][pJailTime],JailPrice[suspect]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                SendClientMessage(suspect,COLOR_WHITE,"Use '/Serviзo Advogado' para chamar um advogado ou '/PagarFianзa' para pagar fianзa.");
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                            else
                            {
                                JailPrice[suspect] = 0;
                                format(string,sizeof(string),"Vocк estб preso por %d minuto(s) - Fianзa: Indisponivel.",PlayerInfo[suspect][pJailTime]);
                                SendClientMessage(suspect,COLOR_LIGHTBLUE,string);
                                format(string,sizeof(string),"* %s prendeu personagem %s por %d segundos.",sendername,giveplayer,PlayerInfo[suspect][pJailTime]);
                                ProxDetector(30.0,playerid,string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            }
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid,COLOR_GRAD1,"ERRO: ID/invбlido.");
                    return true;
                }
            }
            else
            {
                SendClientMessage(playerid,COLOR_GRAD1,"ERRO: Acesso restrito apenas a policiais.");
                return true;
            }
        }
        return true;
    }
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)