[Script] їQue anda pasando aca?
#1

Buenas, hace poco estuve editando el sistema de /arrestar, /esposar y /quitaresposas, mi objetivo era el siguiente: cuando una persona se rinde al poner /esposar crea un objeto en las manos del sujeto conjunto una animacion para tener las manos atrбs, el problema viene desde acб.. el /esposar funciona perfectamente, el /quitaresposas remueve la animacion y el objeto de el, pero el problema es.. ME LO AGREGA a MI! en la mano derecha me aparece las esposas ,otro problema... al /arrestar al sujeto queda con la animacion y las esposas me vuelven a aparecer a mi... No entiendo que estб mal en el code, aqui lo dejo por si alguien sabe la soluciуn:


ARRESTAR:
pawn Код:
if(strcmp(cmd, "/arrestar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(IsACop(playerid) || IsAFreecop(playerid))
            {
                if(PlayerInfo[playerid][pDuty] == 0)
                {
                    SendClientMessage(playerid, COLOR_GREY, "** Tu no estas en Servicio!");
                    return 1;
                }
                if(PlayerInfo[playerid][pDBanned] == 1)
                {
                    SendClientMessage(playerid, COLOR_GREY, "** Tu Estas Baneado del Servicio Policial!");
                    return 1;
                }

                if(IsPlayerInRangeOfPoint(playerid, 6, 1564.8593,-1696.7213,5.8906))
                {//New arrest system SAPD

                    tmp = strtok(cmdtext, idx);
                    if(!strlen(tmp))
                    {
                        SendClientMessage(playerid, COLOR_GRAD2, "Usa: /arrestar [precio] [tiempo (minutos)] [fianza (0=no 1=si)] [precio fianza]");
                        return 1;
                    }
                    moneys = strval(tmp);
                    if(moneys < 1 || moneys > 20000) { SendClientMessage(playerid, COLOR_GREY, "   Precio de Arresto no menor a $1 o mayor a $20000!"); return 1; }
                    tmp = strtok(cmdtext, idx);
                    if(!strlen(tmp))
                    {
                        SendClientMessage(playerid, COLOR_GRAD2, "Usa: /arrestar [precio] [tiempo (minutos)] [fianza (0=no 1=si)] [precio fianza]");
                        return 1;
                    }
                    new time = strval(tmp);
                    if(time < 1 || time > 5) { SendClientMessage(playerid, COLOR_GREY, "   Minutos de Arresto no menor a 1 o mayor a 5!"); return 1; }
                    tmp = strtok(cmdtext, idx);
                    if(!strlen(tmp))
                    {
                        SendClientMessage(playerid, COLOR_GRAD2, "Usa: /arrestar [precio] [tiempo (minutos)] [fianza (0=no 1=si)] [precio fianza]");
                        return 1;
                    }
                    new bail = strval(tmp);
                    if(bail < 0 || bail > 1) { SendClientMessage(playerid, COLOR_GREY, "   Fianza no menor a 0 o mayor a 1!"); return 1; }
                    tmp = strtok(cmdtext, idx);
                    if(!strlen(tmp))
                    {
                        SendClientMessage(playerid, COLOR_GRAD2, "Usa: /arrestar [precio] [tiempo (minutos)] [fianza (0=no 1=si)] [precio fianza]");
                        return 1;
                    }
                    new bailprice = strval(tmp);
                    if(bailprice < 0 || bailprice > 2000000) { SendClientMessage(playerid, COLOR_GREY, "** Fianza no menor a $0 o mayor a $2000000!"); return 1; }
                    new suspect = GetClosestPlayer(playerid);
                    if(IsPlayerConnected(suspect))
                    {
                        if(GetDistanceBetweenPlayers(playerid,suspect) < 5)
                        {
                            GetPlayerName(suspect, giveplayer, sizeof(giveplayer));

                            if(WantedLevel[suspect] < 1)
                            {
                                SendClientMessage(playerid, COLOR_GREY, "** El Jugador tiene que tener almenos 1 estrella!");
                                return 1;
                            }
                            format(string, sizeof(string), "* Haz arrestado a %s!", giveplayer);
                            SendClientMessage(playerid, COLOR_WHITE, string);
                            SafeGivePlayerMoney(suspect, -moneys);
                            format(string, sizeof(string), "Arrestado por %s ~n~    por $%d", sendername, moneys);
                            GameTextForPlayer(suspect, string, 5000, 5);
                            SafeResetPlayerWeapons(suspect);
                            if(PlayerInfo[playerid][pMember]==1||PlayerInfo[playerid][pLeader]==1)
                            {
                                new currank[64];
                                if(PlayerInfo[playerid][pRank] == 1) { currank = "Cadete"; }
                                else if(PlayerInfo[playerid][pRank] == 2) { currank = "Oficial"; }
                                else if(PlayerInfo[playerid][pRank] == 3) { currank = "Oficial Superior"; }
                                else if(PlayerInfo[playerid][pRank] == 4) { currank = "Sargento"; }
                                else if(PlayerInfo[playerid][pRank] == 5) { currank = "Teniente"; }
                                else if(PlayerInfo[playerid][pRank] == 6) { currank = "Capitan"; }
                                else if(PlayerInfo[playerid][pRank] == 7) { currank = "Sub Comisario"; }
                                else if(PlayerInfo[playerid][pRank] == 8) { currank = "Jefe"; }
                                else { currank = "Cadete"; }
                                format(string, sizeof(string), "[Policia] %s %s Ha arrestado a %s", currank ,sendername, giveplayer);
                                OOCNews(COLOR_BLUE, string);
                            }
                            else if(PlayerInfo[playerid][pMember]==2||PlayerInfo[playerid][pLeader]==2)
                            {
                                format(string, sizeof(string), "[Policia] Agente %s Ha arrestado a %s", sendername, giveplayer);
                                OOCNews(COLOR_BLUE, string);
                            }
                            else if(PlayerInfo[playerid][pMember]==3||PlayerInfo[playerid][pLeader]==3)
                            {
                                format(string, sizeof(string), "[Policia] Soldado %s Ha arrestado a %s", sendername, giveplayer);
                                OOCNews(COLOR_BLUE, string);
                            }
                            else if(IsAFreecop(playerid))
                            {
                                format(string, sizeof(string), "[Policia] Voluntario %s Ha arrestado a %s", sendername, giveplayer);
                                OOCNews(COLOR_BLUE, string);
                            }
                            SafeSetPlayerInterior(suspect, 6);
                            SafeSetPlayerPos(suspect,264.6288,77.5742,1001.0391);
                            PlayerInfo[suspect][pJailTime] = time * 60;
                            if(bail == 1)
                            {
                                JailPrice[suspect] = bailprice;
                                format(string, sizeof(string), "Estas arrestado por %d segundos.   Fianza: $%d", PlayerInfo[suspect][pJailTime], JailPrice[suspect]);
                                SendClientMessage(suspect, COLOR_WHITE, string);
                            }
                            else
                            {
                                JailPrice[suspect] = 0;
                                format(string, sizeof(string), "Estas arrestado por %d segundos.   Fianza: No", PlayerInfo[suspect][pJailTime]);
                                SendClientMessage(suspect, COLOR_WHITE, string);
                            }
                            PlayerInfo[suspect][pJailed] = 1;
                            PlayerInfo[suspect][pArrested] += 1;
                            SetPlayerFree(suspect,playerid, "Arrestado!");
                            WantedPoints[suspect] = 0;
                            WantedLevel[suspect] = 0;
                            WantLawyer[suspect] = 1;
                            PlayerCuffed[suspect] = 0;
                            SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_NONE);
                            GaveUp[suspect] = 0;
                            TogglePlayerControllable(suspect, true);
                           
                           
                            if(PlayerInfo[suspect][pDragged]) PlayerInfo[suspect][pDragged] = 0;

                            if(!SetPlayerAttachedObject(playerid, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977,-81.700035, 0.891999, 1.000000, 1.168000))return SendClientMessage(playerid,-1,"ERROR: El jugador no esta esposado!");//this will check that if the player is not cuffed and you are trying to apply this cmd,this will send him a error message.
                            SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_NONE);
                            new y, m, d;
                            new h,mi,s;
                            getdate(y,m,d);
                            gettime(h,mi,s);
                            format(string,sizeof(string), "(%d/%d/%d)[%d:%d:%d] %s Has Arrested %s for %s Seconds. Bail: $%d, Price: $%d",d,m,y,h,mi,s,sendername,giveplayer, PlayerInfo[suspect][pJailTime],JailPrice[suspect],moneys);
                            JailLog(string);
                        }//distance
                    }//not connected
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "** No eres del FBI!");
                return 1;
            }
        }//not connected
        return 1;
Quitar esposas:
pawn Код:
if(strcmp(cmd, "/quitaresposas", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(IsACop(playerid))
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                    SendClientMessage(playerid, COLOR_WHITE, "Usa: /quitaresposas [ID/Nombre]");
                    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, "No puedes usarlo en ti mismo!"); return 1; }
                            if(PlayerCuffed[giveplayerid])
                            {
                                GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                                format(string, sizeof(string), "* %s Te ha removido las esposas.", sendername);
                                SendClientMessage(giveplayerid, COLOR_WHITE, string);
                                format(string, sizeof(string), "* Le haz removido las esposas a %s.", giveplayer);
                                SendClientMessage(playerid, COLOR_WHITE, string);
                                GameTextForPlayer(giveplayerid, "~g~Liberado!", 2500, 3);
                                TogglePlayerControllable(giveplayerid, 1);
                                PlayerCuffed[giveplayerid] = 0;
                                GaveUp[giveplayerid] = 0;
                                if(!SetPlayerAttachedObject(playerid, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977,-81.700035, 0.891999, 1.000000, 1.168000))return SendClientMessage(playerid,-1,"ERROR: El jugador no esta esposado!");//this will check that if the player is not cuffed and you are trying to apply this cmd,this will send him a error message.
                          SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_NONE);
                                SetPlayerColor(giveplayerid, 0xFF990000);
                            }
                            else
                            {
                                SendClientMessage(playerid, COLOR_GREY, "* Ese jugador no estб esposado !");
                                return 1;
                            }
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "* Ese jugador no estб cerca de ti !");
                            return 1;
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_GREY, "* Ese Jugador esta fuera de lнnea !");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "* Tu no eres Policia / FBI / National Guard !");
            }
        }//not connected
        return 1;
Si alguien puede echarle un ojo y decirme que ando haciendo mal se los agradeceria, Saludos
Reply


Messages In This Thread
[Solucionado] їQue anda pasando aca? - by nilesk - 22.05.2015, 03:42
Respuesta: [Script] їQue anda pasando aca? - by Zume - 22.05.2015, 03:56
Re: [Script] їQue anda pasando aca? - by SickAttack - 22.05.2015, 04:00
Re: [Script] їQue anda pasando aca? - by nilesk - 22.05.2015, 04:00
Re: [Script] їQue anda pasando aca? - by nilesk - 22.05.2015, 04:10

Forum Jump:


Users browsing this thread: 1 Guest(s)