SA-MP Forums Archive
[AJUDA] TEMPO DE PRISAO - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA] TEMPO DE PRISAO (/showthread.php?tid=192273)



[AJUDA] TEMPO DE PRISAO - Tom_Park - 22.11.2010

Olб ..Olha meu gm ta com um problema e
naum consigo resolver o problema й esse que irei passar logo abaixo


Tipo quando um player vai preso na prisao .. Seja o tempo que for vamos da exemplo de 500 .. "Vocк foi preso por 500 segundos" ta + dai naum sai fica sempre no 500 segundos ali alguem me ajuda ja tentei de tudo aqui naum consigo =/ por favor ajuda ae =D



Re: [AJUDA] TEMPO DE PRISAO - [Ips]Guh - 22.11.2010

Posta seu comando /prender


Re: [AJUDA] TEMPO DE PRISAO - Macintosh - 22.11.2010

Poste seu OnPlayerDeath filho.


Re: [AJUDA] TEMPO DE PRISAO - Tom_Park - 22.11.2010

Код:
	if(strcmp(cmd, "/prender", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	   	{
			if(gTeam[playerid] == 2  || IsACop(playerid) || IsAPre(playerid))
			{
				if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMembro] == 1 && PlayerInfo[playerid][pMembro] == 17)
				{
				    SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo estб de plantгo!");
				    return 1;
				}
		        if(!PlayerToPoint(6.0, playerid, 198.5995,179.4211,1003.0315))
				{// Jail spot
				    SendClientMessage(playerid, COLOR_GREY, "   Voce nгo estб perto da cela, nгo pode prender o suspeito !");
				    return 1;
				}
				tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USE: /prender [preзo] [tempo (minutos)] [fianca (0=nao 1=sim)] [preco da fianca]");
					return 1;
				}
				moneys = strval(tmp);
				if(moneys < 1 || moneys > 99999) { SendClientMessage(playerid, COLOR_GREY, "   O Preзo nгo pode ser menor que R$1 ou maior que R$99999 !"); return 1; }
				tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USE: /prender [preзo] [tempo (minutos)] [fianca (0=nao 1=sim)] [preco da fianca]");
					return 1;
				}
				new time = strval(tmp);
				if(time < 1 || time > 20) { SendClientMessage(playerid, COLOR_GREY, "   O Tempo nao pode ser menor que 1 nem maior que 20 !"); return 1; }
				tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USE: /prender [preзo] [tempo (minutos)] [fianca (0=nao 1=sim)] [preco da fianca]");
					return 1;
				}
				new bail = strval(tmp);
				if(bail < 0 || bail > 1) { SendClientMessage(playerid, COLOR_GREY, "   Fianca nao pode ser menor que 0 nem maior que 1 !"); return 1; }
				tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USE: /prender [preзo] [tempo (minutos)] [fianca (0=nao 1=sim)] [preco da fianca]");
					return 1;
				}
				new bailprice = strval(tmp);
				if(bailprice < 0 || bailprice > 3000000) { SendClientMessage(playerid, COLOR_GREY, "   O Preзo nao pode ser menor que %0 nem maior que R$3000000 !"); return 1; }
				new suspect = GetClosestPlayer(playerid);
				if(IsPlayerConnected(suspect))
				{
					if(GetDistanceBetweenPlayers(playerid,suspect) < 5)
					{
						GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
						GetPlayerName(playerid, sendername, sizeof(sendername));
						if(WantedLevel[suspect] < 1)
						{
						    SendClientMessage(playerid, COLOR_GREY, "   O Jogador deve ter no minimo 1 nivel de procurado!");
						    return 1;
						}
						format(string, sizeof(string), "* Prendeu %s !", giveplayer);
						SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
						GivePlayerMoneyEx(suspect, -moneys);
						format(string, sizeof(string), "Preso por %s ~n~    fou R$%d", sendername, moneys);
						GameTextForPlayer(suspect, string, 5000, 5);
						ResetPlayerWeapons(suspect);
						if(PlayerInfo[playerid][pMembro]==1||PlayerInfo[playerid][pLider]==1)
						{
							format(string, sizeof(string), "<< Policial Militar %s prendeu o suspeito %s >>", sendername, giveplayer);
							SendClientMessageToAll(COLOR_LIGHTRED, string);
						}
						else if(PlayerInfo[playerid][pMembro]==2||PlayerInfo[playerid][pLider]==2)
						{
							format(string, sizeof(string), "<< Policial Federal %s prendeu o suspeito %s >>", sendername, giveplayer);
							SendClientMessageToAll(COLOR_LIGHTRED, string);
						}
						else if(PlayerInfo[playerid][pMembro]==3||PlayerInfo[playerid][pLider]==3)
						{
							format(string, sizeof(string), "<< Exйrcito %s prendeu o suspeito %s >>", sendername, giveplayer);
							SendClientMessageToAll(COLOR_LIGHTRED, string);
						}
						else if(PlayerInfo[playerid][pMembro]==7||PlayerInfo[playerid][pLider]==7)
						{
							format(string, sizeof(string), "<< Policia Especial %s prendeu o suspeito %s >>", sendername, giveplayer);
							SendClientMessageToAll(COLOR_LIGHTRED, string);
						}
						else if(PlayerInfo[playerid][pMembro]==13||PlayerInfo[playerid][pLider]==137)
						{
							format(string, sizeof(string), "<< Policia Rodoviaria %s prendeu o suspeito %s >>", sendername, giveplayer);
							SendClientMessageToAll(COLOR_LIGHTRED, string);
						}
						else if(PlayerInfo[playerid][pMembro]==25||PlayerInfo[playerid][pLider]==25)
						{
							format(string, sizeof(string), "<< FAB %s prendeu o suspeito %s >>", sendername, giveplayer);
							SendClientMessageToAll(COLOR_LIGHTRED, string);
						}
						SetPlayerInterior(suspect, 3);
						SetPlayerPos(suspect,197.4018,175.4152,1003.0234);
						PlayerInfo[suspect][pJailTime] = time * 60;
						if(bail == 1)
						{
							JailPrice[suspect] = bailprice;
							format(string, sizeof(string), "Voce foi preso por %d Segundos.   Bail: R$%d", PlayerInfo[suspect][pJailTime], JailPrice[suspect]);
							SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
						}
						else
						{
						    JailPrice[suspect] = 0;
							format(string, sizeof(string), "Voce foi preso por %d Segundos.   Bail: Unable", PlayerInfo[suspect][pJailTime]);
							SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
						}
						PlayerInfo[suspect][pJailed] = 1;
				        PlayerInfo[suspect][pArrested] += 1;
						SetPlayerFree(suspect,playerid, "Foi Preso");
						WantedPoints[suspect] = 0;
						WantedLevel[suspect] = 0;
						WantAdvogado[suspect] = 1;
					}//distance
				}//not connected
				else
				{
				    SendClientMessage(playerid, COLOR_GREY, "   Nao e o suficiente para fechar a prisao.");
				    return 1;
				}
			}
			else
			{
			    SendClientMessage(playerid, COLOR_GREY, "   Voce nгo e Policial/ROTAM/Exercito/Policia Especial/Policia Rodoviaria/FAB !");
			    return 1;
			}
		}//not connected
		return 1;
	}



Re: [AJUDA] TEMPO DE PRISAO - rjjj - 22.11.2010

Montei esse cуdigo, espero que resolva seu problema

Coloque :

pawn Код:
//No Topo do GM, perto das outras forwards:

forward RetirarPlayerJaula();

//No OnGameModeInit:

SetTimer("RetirarPlayerJaula", 1000, 1);

//Final do GM:

public RetirarPlayerJaula()
{
    new string[256];
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i))
        {
            if(PlayerInfo[i][pJailTime] > 0 && WantAdvogado[i] == 0)
            {
                PlayerInfo[i][pJailTime]--;
            }
            if(PlayerInfo[i][pJailTime] <= 0 && WantAdvogado[i] == 0)
            {
                PlayerInfo[i][pJailTime] = 0;
                if(PlayerInfo[i][pJailed] == 1)
                {
                    SetPlayerInterior(i, 6);
                    SetPlayerPos(i,268.0903,77.6489,1001.0391);
                }
                else if(PlayerInfo[i][pJailed] == 2)
                {
                    SetPlayerWorldBounds(i,20000.0000,-20000.0000,20000.0000,-20000.0000);
                    SetPlayerInterior(i, 0);
                    SetPlayerPos(i, 90.2101,1920.4854,17.9422);
                }
                    PlayerInfo[i][pJailed] = 0;
                    SendClientMessage(i, COLOR_GRAD1,"Voce pagou sua divida com a sociedade.");
                    format(string, sizeof(string), "~g~Livre~n~~w~Nao cometa mais crimes");
                    GameTextForPlayer(i, string, 5000, 1);
                    ClearCrime(i);
                    SetPlayerToTeamColor(i);
            }
        }
    }
}



Re: [AJUDA] TEMPO DE PRISAO - Tom_Park - 22.11.2010

Tipo Rjjj deu atй certo mais depois que saio fica floodando la toda hora
" Voce pagou sua divida com a sociedade." e tan bem esse "Livre Nao cometa mais crimes" =/


Re: [AJUDA] TEMPO DE PRISAO - roginho_97 - 22.11.2010

Tava com esse problema, mais resolveu apуs eu reconfigurar meu HouseInfo.


Re: [AJUDA] TEMPO DE PRISAO - Tom_Park - 22.11.2010

Quote:
Originally Posted by roginho_97
Посмотреть сообщение
Tava com esse problema, mais resolveu apуs eu reconfigurar meu HouseInfo.
Acho que isso nгo tem nada a ver ..


Re: [AJUDA] TEMPO DE PRISAO - roginho_97 - 22.11.2010

й para mim tambem nгo tinha.

Mas acabay descobrindo isso, quando fui fazer todas casas novas pro meu servidor.

Disbugou praticamente tuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuudo, gangzones, textdraws, settimers, tudo.

Se quiser.....


Re: [AJUDA] TEMPO DE PRISAO - rjjj - 22.11.2010

Entгo remova as seguintes linhas que estгo no cуdigo que eu citei:

pawn Код:
new string[256];//Essa estб no comeзo da public RetirarPlayerJaula.

SendClientMessage(i, COLOR_GRAD1,"Voce pagou sua divida com a sociedade.");//Essa estб no final da public.

format(string, sizeof(string), "~g~Livre~n~~w~Nao cometa mais crimes");//Essa estб no final da public.

GameTextForPlayer(i, string, 5000, 1);//Essa estб no final da public.

Assim o texto para de aparecer =D