[Ajuda] Prender player
#1

Quando um Cop Mata um player , ele й mandado para a prisгo da DP.

Eu queria fazer tipo assim , quando o cara da PM Mata o cara ele vai pra cela da DP

Quando o cara do BOPE Mata ele vai preso na cela do BOPE

e assim por diante , como posso fazer ?

Aqui o codigo que acho que й o de prender
pawn Код:
if(newstate == PLAYER_STATE_WASTED)
    {
        if(WantedPoints[playerid] >= 1 && PlayerInfo[playerid][pMember] != 21 && PlayerInfo[playerid][pMember] != 14)
        {
            //new price = WantedPoints[playerid] * 50;
            new price = 500;
            new deadprice = 500;
            new count;
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                    if(CrimInRange(30.0, playerid,i))
                    if(PlayerInfo[i][pMember] == 1 || PlayerInfo[i][pMember] == 2 || PlayerInfo[i][pMember] == 3 || PlayerInfo[i][pMember] == 14 || PlayerInfo[i][pMember] == 21 || PlayerInfo[i][pMember] == 7 || PlayerInfo[i][pMember] == 29)
                    {
                        count = 1;
                        format(string, sizeof(string), "~w~Suspeito Procurado ~r~Morto ~n~ ~g~ R$%d", price);
                        GameTextForPlayer(i, string, 5000, 1);
                        ConsumingMoney[i] = 1;
                        PlayerPlaySound(i, 1058, 0.0, 0.0, 0.0);
                        if(GetPlayerGP(playerid) >= price) { GivePlayerGP(playerid, - price); GivePlayerGP(i,price);
                        } else { SendClientMessage(i, COLOR_YELLOW, "<< O suspeito nгo teve como pagar a dнvida aos oficiais >>"); }
                    }
                }
            }
            if(count == 1)
            {
                PlayerInfo[playerid][pWantedDeaths] += 1;
                PlayerInfo[playerid][pJailed] = 1;
                PlayerInfo[playerid][pJailTime] = (WantedPoints[playerid])*(240);
                PlayerInfo[playerid][pJailTimeTotal] = (WantedPoints[playerid])*(240);
                format(string, sizeof(string), "Vocк estб preso por %d segundos e perdeu R$ %d por cometer crimes.", PlayerInfo[playerid][pJailTime], deadprice);
                SendClientMessage(playerid, COLOR_OOC, string);
                WantedPoints[playerid] = 0;
                SetPlayerWantedLevel(playerid, WantedPoints[playerid]);
            }
        }
    }
Ai tentei fazer um parecido mas mudando a org ficou assim:

pawn Код:
if(newstate == PLAYER_STATE_WASTED)
    {
        if(WantedPoints[playerid] >= 1 && PlayerInfo[playerid][pMember] != 21 && PlayerInfo[playerid][pMember] != 14)
        {
            //new price = WantedPoints[playerid] * 50;
            new price = 500;
            new deadprice = 500;
            new count;
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                    if(CrimInRange(30.0, playerid,i))
                    if(PlayerInfo[i][pMember] == 1 || PlayerInfo[i][pMember] == 2 || PlayerInfo[i][pMember] == 3 || PlayerInfo[i][pMember] == 14 || PlayerInfo[i][pMember] == 21 || PlayerInfo[i][pMember] == 7 || PlayerInfo[i][pMember] == 29)
                    {
                        count = 1;
                        format(string, sizeof(string), "~w~PM:Suspeito Procurado ~r~Morto ~n~ ~g~ R$%d", price);
                        GameTextForPlayer(i, string, 5000, 1);
                        ConsumingMoney[i] = 1;
                        PlayerPlaySound(i, 1058, 0.0, 0.0, 0.0);
                        if(GetPlayerGP(playerid) >= price) { GivePlayerGP(playerid, - price); GivePlayerGP(i,price);
                        } else { SendClientMessage(i, COLOR_YELLOW, "<< O suspeito nгo teve como pagar a dнvida aos oficiais >>"); }
                    }
                }
            }
            if(count == 1)
            {
                PlayerInfo[playerid][pWantedDeaths] += 1;
                PlayerInfo[playerid][pJailed] = 1;
                PlayerInfo[playerid][pJailTime] = (WantedPoints[playerid])*(240);
                PlayerInfo[playerid][pJailTimeTotal] = (WantedPoints[playerid])*(240);
                format(string, sizeof(string), "Vocк estб preso por %d segundos e perdeu R$ %d por cometer crimes.", PlayerInfo[playerid][pJailTime], deadprice);
                SendClientMessage(playerid, COLOR_OOC, string);
                WantedPoints[playerid] = 0;
                SetPlayerWantedLevel(playerid, WantedPoints[playerid]);
            }
        }
    }
    //PRENDER MILICIA
    if(newstate == PLAYER_STATE_WASTED)
    {
        if(WantedPoints[playerid] >= 30)
        {
            //new price = WantedPoints[playerid] * 50;
            new price = 500;
            new deadprice = 500;
            new count;
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                    if(CrimInRange(30.0, playerid,i))
                    if(PlayerInfo[i][pMember] == 30 || PlayerInfo[i][pLeader] == 30)
                    {
                        count = 1;
                        format(string, sizeof(string), "~w~Milicia:Suspeito Procurado ~r~Morto ~n~ ~g~ R$%d", price);
                        GameTextForPlayer(i, string, 5000, 1);
                        ConsumingMoney[i] = 1;
                        PlayerPlaySound(i, 1058, 0.0, 0.0, 0.0);
                        if(GetPlayerGP(playerid) >= price) { GivePlayerGP(playerid, - price); GivePlayerGP(i,price);
                        } else { SendClientMessage(i, COLOR_YELLOW, "<< O suspeito nгo teve como pagar a dнvida aos oficiais >>"); }
                    }
                }
            }
            if(count == 1)
            {
                PlayerInfo[playerid][pWantedDeaths] += 1;
                PlayerInfo[playerid][pJailed] = 30;
                PlayerInfo[playerid][pJailTime] = (WantedPoints[playerid])*(240);
                PlayerInfo[playerid][pJailTimeTotal] = (WantedPoints[playerid])*(240);
                format(string, sizeof(string), "Vocк estб preso por %d segundos e perdeu R$ %d por cometer crimes.", PlayerInfo[playerid][pJailTime], deadprice);
                SendClientMessage(playerid, COLOR_OOC, string);
                WantedPoints[playerid] = 0;
                SetPlayerWantedLevel(playerid, WantedPoints[playerid]);
            }
        }
    }
    //PRENDER MILICIA
Mas quando o cara da Milicia ( ID: 30 ) Mata o suspeito ele nao vai preso , fica apenas como morreu D=
Reply
#2

vou te dar um exemplo:
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    if(PlayerInfo[killerid][pMember] == 2 || PlayerInfo[killerid][pLider] == 2) //suponhamos que a org bope seja id 2
    {
        if(PlayerInfo[playerid][Procurado] >= 1)//exemplo de uma array que guarda o nнvel de procurado
        {
            SetPlayerPos(//posiзгo da sela do bope...
            //outras funзхes...
        }
        return 1;
    }
    return 1;
}
olhe meu exemplo e tente criar seu prуprio cуdigo.
Reply
#3

:/ eu nгo mexo muito com pawno

posiзгo da Cela -100.8931, -1562.0931, 2.6522

Ajuda pf D=
Reply
#4

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    if(PlayerInfo[killerid][pMember] == 2 || PlayerInfo[killerid][pLider] == 2) //suponhamos que a org bope seja id 2
    {
        if(PlayerInfo[playerid][Procurado] >= 1)//exemplo de uma array que guarda o nнvel de procurado
        {
            SetPlayerPos(playerid,-100.8931, -1562.0931, 2.6522);
            //outras funзхes...
        }
        return 1;
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)