[Ajuda] Evento e Sequestrar/Amarrar
#1

Bom galera,estou com 2 problemas,primeiro seria que quando o player estivesse no evento de mata-mata nгo ganharia nнvel de procura,eu criei uma variбvel,para quando ele estivesse no evento e para quando ele nгo estivesse ...Mas estб dando uns erros ao compilar:
pawn Код:
SetPlayerCriminal(killerid,255, "Assassinato em primeiro grau");
PlayerInfo[killerid][pKills] += 1;
if(SuEvento == 1)
Код:
error: 033: array must be indexed (variable "SuEvento")
Meu segundo problema,й que quando o player sequestrar ou amarra alguйm,ele trava tambйm,ai sу dando /descongelar ou /desbugar para ele voltar a se mexer...

pawn Код:
if(strcmp(cmd, "/sequestrar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new playa;
            if(PlayerInfo[playerid][pMembro] == 5 || PlayerInfo[playerid][pLider] == 5 || PlayerInfo[playerid][pMembro] == 6 || PlayerInfo[playerid][pLider] == 6 || PlayerInfo[playerid][pMembro] == 14 || PlayerInfo[playerid][pLider] == 14 || PlayerInfo[playerid][pMembro] == 15 || PlayerInfo[playerid][pLider] == 15 || PlayerInfo[playerid][pMembro] == 17 || PlayerInfo[playerid][pLider] == 17
            || PlayerInfo[playerid][pMembro] == 18 || PlayerInfo[playerid][pLider] == 18 || PlayerInfo[playerid][pMembro] == 19 || PlayerInfo[playerid][pLider] == 19 || PlayerInfo[playerid][pMembro] == 20 || PlayerInfo[playerid][pLider] == 20 || PlayerInfo[playerid][pMembro] == 21 || PlayerInfo[playerid][pLider] == 21
             || PlayerInfo[playerid][pMembro] == 23 || PlayerInfo[playerid][pLider] == 23)
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GRAD2, "USE: /sequestrar [ id ] [resgate]");
                    return true;
                }
                new money;
                new orgintegrante;
                giveplayerid = ReturnUser(tmp);
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) { return true; }
                money = strval(tmp);
                if(money < 1 || money > 300000) { SendClientMessage(playerid, COLOR_GREY, "   Preзo maior que 1, menor que 300000!"); return true; }
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            if(giveplayerid == playerid)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode se sequestrar !");
                                return true;
                            }

                            if(PlayerInfo[playerid][pMembro] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pMembro];
                            }
                            if(PlayerInfo[playerid][pLider] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pLider];
                            }
                            if(GuSequestro[orgintegrante][QuantidadeSequestro] == SequestroVezes)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "Sua organizaзгo ultrapassou o limite de sequestros por PayDay !");
                                return true;
                            }
                            new Integrante[MAX_INTEGRANTE_NOMES];//Maximo de Org ;)
                            DefineOrgNameSequestro(orgintegrante, Integrante, MAX_INTEGRANTE_NOMES);
                            Controle(playa, 0);
                            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            format(string, sizeof(string), "* Vocк foi sequestrado por %s.", sendername);
                            SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* Vocк sequestrou %s.", giveplayer);
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "[SEQUESTRO] O %s %s, estб sequestrando %s, e pede o resgate no valor de R$%d.", Integrante, sendername, giveplayer, money);
                            SendClientMessageToAll(COLOR_EXE, string);
                            format(string, sizeof(string), "* %s sequestra %s, entгo ele nгo irб а lugar algum.", sendername ,giveplayer);
                            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            GameTextForPlayer(giveplayerid, "~r~Sequestrado", 2500, 3);
                            Controle(giveplayerid, 0);
                            PlayerTied[giveplayerid] = 1;
                            PlayerCuffedTime[giveplayerid] = 99999999999999;
                            GuSequestro[orgintegrante][QuantidadeSequestro] = 1;
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O Jogador nгo estб perto de vocк !");
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб Offline!");
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й de uma gangue !");
            }
        }
        return true;
    }
Reply
#2

pawn Код:
if(SuEvento[playerid] == 1)
#EDIT

pawn Код:
if(strcmp(cmd, "/sequestrar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pMembro] == 5 || PlayerInfo[playerid][pLider] == 5 || PlayerInfo[playerid][pMembro] == 6 || PlayerInfo[playerid][pLider] == 6 || PlayerInfo[playerid][pMembro] == 14 || PlayerInfo[playerid][pLider] == 14 || PlayerInfo[playerid][pMembro] == 15 || PlayerInfo[playerid][pLider] == 15 || PlayerInfo[playerid][pMembro] == 17 || PlayerInfo[playerid][pLider] == 17
            || PlayerInfo[playerid][pMembro] == 18 || PlayerInfo[playerid][pLider] == 18 || PlayerInfo[playerid][pMembro] == 19 || PlayerInfo[playerid][pLider] == 19 || PlayerInfo[playerid][pMembro] == 20 || PlayerInfo[playerid][pLider] == 20 || PlayerInfo[playerid][pMembro] == 21 || PlayerInfo[playerid][pLider] == 21
             || PlayerInfo[playerid][pMembro] == 23 || PlayerInfo[playerid][pLider] == 23)
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GRAD2, "USE: /sequestrar [ id ] [resgate]");
                    return true;
                }
                new money;
                new orgintegrante;
                giveplayerid = ReturnUser(tmp);
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) { return true; }
                money = strval(tmp);
                if(money < 1 || money > 300000) { SendClientMessage(playerid, COLOR_GREY, "   Preзo maior que 1, menor que 300000!"); return true; }
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            if(giveplayerid == playerid)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode se sequestrar !");
                                return true;
                            }

                            if(PlayerInfo[playerid][pMembro] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pMembro];
                            }
                            if(PlayerInfo[playerid][pLider] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pLider];
                            }
                            if(GuSequestro[orgintegrante][QuantidadeSequestro] == SequestroVezes)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "Sua organizaзгo ultrapassou o limite de sequestros por PayDay !");
                                return true;
                            }
                            new Integrante[MAX_INTEGRANTE_NOMES];//Maximo de Org ;)
                            DefineOrgNameSequestro(orgintegrante, Integrante, MAX_INTEGRANTE_NOMES);
                            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            format(string, sizeof(string), "* Vocк foi sequestrado por %s.", sendername);
                            SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* Vocк sequestrou %s.", giveplayer);
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "[SEQUESTRO] O %s %s, estб sequestrando %s, e pede o resgate no valor de R$%d.", Integrante, sendername, giveplayer, money);
                            SendClientMessageToAll(COLOR_EXE, string);
                            format(string, sizeof(string), "* %s sequestra %s, entгo ele nгo irб а lugar algum.", sendername ,giveplayer);
                            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            GameTextForPlayer(giveplayerid, "~r~Sequestrado", 2500, 3);
                            Controle(giveplayerid, 0);
                            PlayerTied[giveplayerid] = 1;
                            PlayerCuffedTime[giveplayerid] = 99999999999999;
                            GuSequestro[orgintegrante][QuantidadeSequestro] = 1;
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O Jogador nгo estб perto de vocк !");
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб Offline!");
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й de uma gangue !");
            }
        }
        return true;
    }
Reply
#3

Deu certinho o /sequestrar,e agora nгo da mais o erro,serб que vocк poderia arrumar o /amarrar fazendo o favor? Porque nгo entendi o que vocк mudou para nгo travar.

pawn Код:
if(strcmp(cmd, "/amarrar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new playa;
            if(PlayerInfo[playerid][pMembro] == 12 || PlayerInfo[playerid][pLider] == 12 || PlayerInfo[playerid][pMembro] == 13 || PlayerInfo[playerid][pLider] == 13)
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GRAD2, "USE: /amarrar [ id ] [resgate]");
                    return true;
                }
                new money;
                new orgintegrante;
                giveplayerid = ReturnUser(tmp);
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) { return true; }
                money = strval(tmp);
                if(money < 1 || money > 300000) { SendClientMessage(playerid, COLOR_GREY, "   Preзo maior que 1, menor que 300000!"); return true; }
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            if(giveplayerid == playerid)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode se sequestrar !");
                                return true;
                            }

                            if(PlayerInfo[playerid][pMembro] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pMembro];
                            }
                            if(PlayerInfo[playerid][pLider] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pLider];
                            }
                            if(GuSequestro[orgintegrante][QuantidadeSequestro] == SequestroVezes)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "Sua organizaзгo ultrapassou o limite de sequestros por PayDay !");
                                return true;
                            }
                            new Integrante[MAX_INTEGRANTE_NOMES];//Maximo de Org ;)
                            DefineOrgNameSequestro(orgintegrante, Integrante, MAX_INTEGRANTE_NOMES);
                            Controle(playa, 0);
                            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            format(string, sizeof(string), "* Vocк foi sequestrado por %s.", sendername);
                            SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* Vocк sequestrou %s.", giveplayer);
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "[SEQUESTRO] O %s %s, estб sequestrando %s, e pede o resgate no valor de R$%d.", Integrante, sendername, giveplayer, money);
                            SendClientMessageToAll(COLOR_EXE, string);
                            format(string, sizeof(string), "* %s sequestra %s, entгo ele nгo irб а lugar algum.", sendername ,giveplayer);
                            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            GameTextForPlayer(giveplayerid, "~r~Sequestrado", 2500, 3);
                            Controle(giveplayerid, 0);
                            PlayerTied[giveplayerid] = 1;
                            PlayerCuffedTime[giveplayerid] = 99999999999999;
                            GuSequestro[orgintegrante][QuantidadeSequestro] = 1;
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O Jogador nгo estб perto de vocк !");
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб Offline!");
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um mafioso!");
            }
        }
        return true;
    }
Reply
#4

pawn Код:
if(strcmp(cmd, "/amarrar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pMembro] == 12 || PlayerInfo[playerid][pLider] == 12 || PlayerInfo[playerid][pMembro] == 13 || PlayerInfo[playerid][pLider] == 13)
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GRAD2, "USE: /amarrar [ id ] [resgate]");
                    return true;
                }
                new money;
                new orgintegrante;
                giveplayerid = ReturnUser(tmp);
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) { return true; }
                money = strval(tmp);
                if(money < 1 || money > 300000) { SendClientMessage(playerid, COLOR_GREY, "   Preзo maior que 1, menor que 300000!"); return true; }
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            if(giveplayerid == playerid)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode se sequestrar !");
                                return true;
                            }

                            if(PlayerInfo[playerid][pMembro] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pMembro];
                            }
                            if(PlayerInfo[playerid][pLider] >= 1)
                            {
                                orgintegrante = PlayerInfo[playerid][pLider];
                            }
                            if(GuSequestro[orgintegrante][QuantidadeSequestro] == SequestroVezes)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "Sua organizaзгo ultrapassou o limite de sequestros por PayDay !");
                                return true;
                            }
                            new Integrante[MAX_INTEGRANTE_NOMES];//Maximo de Org ;)
                            DefineOrgNameSequestro(orgintegrante, Integrante, MAX_INTEGRANTE_NOMES);
                            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            format(string, sizeof(string), "* Vocк foi sequestrado por %s.", sendername);
                            SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* Vocк sequestrou %s.", giveplayer);
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "[SEQUESTRO] O %s %s, estб sequestrando %s, e pede o resgate no valor de R$%d.", Integrante, sendername, giveplayer, money);
                            SendClientMessageToAll(COLOR_EXE, string);
                            format(string, sizeof(string), "* %s sequestra %s, entгo ele nгo irб а lugar algum.", sendername ,giveplayer);
                            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            GameTextForPlayer(giveplayerid, "~r~Sequestrado", 2500, 3);
                            Controle(giveplayerid, 0);
                            PlayerTied[giveplayerid] = 1;
                            PlayerCuffedTime[giveplayerid] = 99999999999999;
                            GuSequestro[orgintegrante][QuantidadeSequestro] = 1;
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O Jogador nгo estб perto de vocк !");
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб Offline!");
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um mafioso!");
            }
        }
        return true;
    }
Pronto...
Reply
#5

Ae,muito obrigado deu certo,rep +

Cara sу o do evento,ele ainda estб pegando nivel de procurado...
tentei assim tambйm:
pawn Код:
SetPlayerCriminal(killerid,255, "Assassinato em primeiro grau");
PlayerInfo[killerid][pKills] += 1;
if(TendoGuerra == 1 && SuEvento[killerid] == 1 && IsPlayerInTerritorio(playerid) && IsPlayerInTerritorio(killerid))
e assim:
pawn Код:
SetPlayerCriminal(killerid,255, "Assassinato em primeiro grau");
PlayerInfo[killerid][pKills] += 1;
if(TendoGuerra == 1 && SuEvento[playerid] == 1 && IsPlayerInTerritorio(playerid) && IsPlayerInTerritorio(killerid))
sabe o porque?
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)