[Ajuda] Player usar comando...
#1

Como faria prum player poder usar comando no outro player apуs esse outro player usar outro comando? Exemplo:

Joгozinho й da polнcia e quer algemar Pedrinho, mas o comando /algemar sу pode ser usado no Pedrinho depois que o Pedrinho usar /handsup, como faria isso?

pawn Код:
if(strcmp(cmd, "/algemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(!IsACop(playerid))
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um policial!");
                return true;
            }
            if(OnDuty[playerid] != 1)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo bateu o cartгo!");
                return true;
            }
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_WHITE, "Use: /algemar [id]");
                return true;
            }
            giveplayerid = ReturnUser(tmp);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode algemar COPs !");
                        return true;
                    }
                    if(PlayerCuffed[giveplayerid] > 0)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   O Jogador jб esta algemado !");
                        return true;
                    }
                    if (ProxDetectorS(8.0, playerid, giveplayerid))
                    {
                        if(giveplayerid == playerid)
                        {
                            SendClientMessage(playerid, COLOR_GREY, "Vocк nao pode se algemar!");
                            return true;
                        }
                        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        format(string, sizeof(string), "* Vocк foi algemado pelo: %s.", PlayerName(playerid));
                        SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                        format(string, sizeof(string), "* Vocк algemou %s.", giveplayer);
                        SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                        format(string, sizeof(string), "* %s Algemou %s, para nao fugir.", sendername ,giveplayer);
                        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                        GameTextForPlayer(giveplayerid, "~r~Algemado", 2500, 3);
                        Controle(giveplayerid, 0);
                        PlayerCuffed[giveplayerid] = 2;
                        SetPlayerAttachedObject(giveplayerid, 4, 19418, 6, -0.031999, 0.024000, -0.024000, -7.900000, -32.000011, -72.299987, 1.115998, 1.322000, 1.406000);
                        SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);
                        ApplyAnimation(giveplayerid,"CRACK","crckidle2",4.1,0,1,1,1,1);
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб longe de Vocк !");
                        return true;
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Jogador Estб Offline !");
                return true;
            }
        }
        return true;
    }
pawn Код:
if (strcmp(cmd, "/handsup", true) == 0)
    {
        SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
        return true;
    }
Reply
#2

pawn Код:
if(strcmp(cmd, "/algemar", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(!IsACop(playerid))
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um policial!");
            return 1;
        }
        if(OnDuty[playerid] != 1)
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo bateu o cartгo!");
            return 1;
        }
        tmp = strtok(cmdtext, idx);

        if(!strlen(tmp))
        {
            SendClientMessage(playerid, COLOR_WHITE, "Use: /algemar [id]");
            return 1;
        }
        giveplayerid = ReturnUser(tmp);

        if(IsPlayerConnected(giveplayerid))
        {
            if(giveplayerid != INVALID_PLAYER_ID)
            {
                if(GetPlayerSpecialAction(giveplayerid) != SPECIAL_ACTION_HANDSUP)
                {
                    SendClientMessage(playerid, COLOR_GREY, "   Este jogador nгo estб com as mгos para cima!");
                    return 1;
                }
                if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
                {
                    SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode algemar COPs !");
                    return 1;
                }
                if(PlayerCuffed[giveplayerid] > 0)
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O Jogador ja esta algemado !");
                    return 1;
                }
                if(ProxDetectorS(8.0, playerid, giveplayerid))
                {
                    if(giveplayerid == playerid)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "Vocк nao pode se algemar!");
                        return 1;
                    }
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    GetPlayerName(playerid, sendername, sizeof(sendername));

                    format(string, sizeof(string), "* Voce Foi algemado por %s", PlayerName(playerid));
                    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);

                    format(string, sizeof(string), "* Voce algemou %s", giveplayer);
                    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);

                    format(string, sizeof(string), "* %s algemou %s", sendername ,giveplayer);
                    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);

                    GameTextForPlayer(giveplayerid, "~r~Algemado", 2500, 3);

                    Controle(giveplayerid, 0);
                    PlayerCuffed[giveplayerid] = 2;

                    SetPlayerAttachedObject(giveplayerid, 4, 19418, 6, -0.031999, 0.024000, -0.024000, -7.900000, -32.000011, -72.299987, 1.115998, 1.322000, 1.406000);
                    SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);

                    ApplyAnimation(giveplayerid,"CRACK","crckidle2",4.1,0,1,1,1,1);
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O Jogador esta longe de Voce !");
                    return 1;
                }
            }
        }
        else
        {
            SendClientMessage(playerid, COLOR_GREY, "   O Jogador Esta Offline !");
            return 1;
        }
    }
    return 1;
}
Reply
#3

Simples crie uma variбvel booleana que passara ter o valor true quando o player usar o comando Handsup e coloca uma condiзгo no comando algemar, sу sera possнvel se essa variбvel for true, a lуgica jб dei agora tente.
Reply
#4

Quote:
Originally Posted by MatheusAlcapone
Посмотреть сообщение
Simples crie uma variбvel booleana que passara ter o valor true quando o player usar o comando Handsup e coloca uma condiзгo no comando algemar, sу sera possнvel se essa variбvel for true, a lуgica jб dei agora tente.
Jб hб uma funзao nativa do SA-MP para isto, entao nao precisa da criaзao da tal booleana.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)