[Ajuda] Bug's com a animaзгo
#1

Estou com 2 problemas, coloquei para fazer uma animaзгo na qndo usar o comando /algemar. Porйm quando uso /desalgemar, para que ele pare com a animaзгo ele continua.
E quando acioma a animaзгo, fica somente para outra pessoa que o vк, quem executa a animaзгo nгo vк ela.


Neste caso do ClearAnimations usei giveplayerid( que retorna a id do player que o maluco digitou) = giveplayerid = ReturnUser(tmp); e no SetPlayerSpecialAction usei tambйm.

Algemar:
pawn Код:
if(strcmp(cmd, "/algemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(gTeam[playerid] == 2 || IsACop(playerid))
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                    SendClientMessage(playerid, COLOR_WHITE, "USE: /algemar [Id Do Jogador]");
                    return 1;
                }
                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 um policial !");
                            return 1;
                        }
                        if(PlayerCuffed[giveplayerid] > 0)
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O jogador jб esta algemado !");
                            return 1;
                        }
                        if (ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            new car = GetPlayerVehicleID(playerid);
                            if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode algemar vocк mesmo!"); return 1; }
                                SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);
                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), "Vocк esta algemado pelo %s, atй а DP para nгo fugir.", sendername);
                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "Vocк Algemou %s, atй а DP para ele nгo fugir.", giveplayer);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "%s Algemou %s, Para ele nгo fugir.", sendername ,giveplayer);
                                ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                                GameTextForPlayer(giveplayerid, "~r~ALGEMADO", 2500, 3);
                                //TogglePlayerControllable(giveplayerid, 0);
                                PlayerCuffed[giveplayerid] = 2;
                                PlayerCuffedTime[giveplayerid] = 180;
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   Aquele jogador nгo estб perto de vocк !");
                            return 1;
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   Esse jogador estб offline !");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um PM / PF / F.A !");
            }
        }
        return 1;
    }
Desalgemar:
pawn Код:
if(strcmp(cmd, "/desalgemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(gTeam[playerid] == 2 || IsACop(playerid))
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                    SendClientMessage(playerid, COLOR_WHITE, "USO: /desalgemar [playerid/Parte-do-Nick]");
                    return 1;
                }
                giveplayerid = ReturnUser(tmp);
                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 desalgemar!"); return 1; }
                            if(PlayerCuffed[giveplayerid])
                            {
                                ClearAnimations(giveplayerid);
                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), "Vocк foi desalgemado por %s.", sendername);
                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "Vocк desalgemou %s.", giveplayer);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                GameTextForPlayer(giveplayerid, "~g~DESALGEMADO", 2500, 3);
                                TogglePlayerControllable(giveplayerid, 1);
                                PlayerCuffed[giveplayerid] = 0;
                            }
                            else
                            {
                                SendClientMessage(playerid, COLOR_GREY, "   O jogador nгo estб algemado !");
                                return 1;
                            }
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O jogador nгo estб prуximo a vocк !");
                            return 1;
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O jogador estб offline !");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um PM / PF / FA !");
            }
        }//not connected
        return 1;
    }
Reply
#2

Tente....
Algemar:
Код:
if(strcmp(cmd, "/algemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(gTeam[playerid] == 2 || IsACop(playerid))
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                    SendClientMessage(playerid, COLOR_WHITE, "USE: /algemar [Id Do Jogador]");
                    return 1;
                }
                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 um policial !");
                            return 1;
                        }
                        if(PlayerCuffed[giveplayerid] > 0)
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O jogador jб esta algemado !");
                            return 1;
                        }
                        if (ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            new car = GetPlayerVehicleID(playerid);
                            if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode algemar vocк mesmo!"); return 1; }
                                SetPlayerSpecialAction(giveplayerid, 24);
                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), "Vocк esta algemado pelo %s, atй а DP para nгo fugir.", sendername);
                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "Vocк Algemou %s, atй а DP para ele nгo fugir.", giveplayer);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "%s Algemou %s, Para ele nгo fugir.", sendername ,giveplayer);
                                ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                                GameTextForPlayer(giveplayerid, "~r~ALGEMADO", 2500, 3);
                                //TogglePlayerControllable(giveplayerid, 0);
                                PlayerCuffed[giveplayerid] = 2;
                                PlayerCuffedTime[giveplayerid] = 180;
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   Aquele jogador nгo estб perto de vocк !");
                            return 1;
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   Esse jogador estб offline !");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um PM / PF / F.A !");
            }
        }
        return 1;
    }
Desalgemar:
Код:
if(strcmp(cmd, "/desalgemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(gTeam[playerid] == 2 || IsACop(playerid))
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                    SendClientMessage(playerid, COLOR_WHITE, "USO: /desalgemar [playerid/Parte-do-Nick]");
                    return 1;
                }
                giveplayerid = ReturnUser(tmp);
                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 desalgemar!"); return 1; }
                            if(PlayerCuffed[giveplayerid])
                            {
                                ClearAnimations(giveplayerid);
                                RemovePlayerAttachedObject(giveplayerid,4);
                                SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_NONE);
                                format(string, sizeof(string), "Vocк foi desalgemado por %s.", sendername);
                                SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                                format(string, sizeof(string), "Vocк desalgemou %s.", giveplayer);
                                SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                                GameTextForPlayer(giveplayerid, "~g~DESALGEMADO", 2500, 3);
                                TogglePlayerControllable(giveplayerid, 1);
                                PlayerCuffed[giveplayerid] = 0;
                            }
                            else
                            {
                                SendClientMessage(playerid, COLOR_GREY, "   O jogador nгo estб algemado !");
                                return 1;
                            }
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O jogador nгo estб prуximo a vocк !");
                            return 1;
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "   O jogador estб offline !");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um PM / PF / FA !");
            }
        }//not connected
        return 1;
    }
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)