SA-MP Forums Archive
[Ajuda] Ir preso ao matar - 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] Ir preso ao matar (/showthread.php?tid=569185)



Ir preso ao matar - JFT - 28.03.2015

Boa tarde a todos, estou com um probleminha aqui, uso "isPlayerInArea" para que o player que esta dentro da definida area de dm possa matar um ao outro, so que eu quero saber como faзo para que o player que matar fora da area de dm ir preso automaticamente por 2 minutos!
Espero que me ajudem obrigado !


Re: Ir preso ao matar - #Luca[S]. - 28.03.2015

PHP код:
forward TirarPrisao(playerid);
new 
LiberarPlayer[MAX_PLAYERS];
public 
OnPlayerDeath(playeridkilleridreason)
{
    if(!
IsPlayerInRangeOfPoint(killeridDistanciaXYZ))
    {
        
RemovePlayerFromVehicle(killerid);
        
SetPlayerVirtualWorld(killerid4);
        
SetPlayerInterior(killerid10);
        
SetPlayerPos(killerid220.0110.0999.1);
        
SendClientMessage(killerid, -1"Vocк foi preso por matar fora da бrea permitida.");
        
LiberarPlayer[playerid] = SetTimerEx("TirarPrisao"1000 60true"i"playerid);
    }
    return 
1;
}
public 
TirarPrisao(playerid)
{
        
SpawnPlayer(playerid);
        
SendClientMessage(playerid, -"Vocк foi solto!");
        return 
1;

Explicando
IsPlayerInRangeOfPoint = Funзгo para ver o local do player
(killerid = quem matou
Distancia = Limite de distвncia da area citada.
X, Y, Z = Local que ele nгo deve estar para ser preso

OBS: Troque Distancia, X, Y, Z por seus respectivos nъmeros/coordernadas.

Espero ter ajudado, abraзos.


Re: Ir preso ao matar - JFT - 28.03.2015

OBRIGADO, irei testar tudo certinho, eu fiz assim , ali em x y z , coloquei as coordenadas da gangzone, isto altera em algo ou tudo ok ?


Re: Ir preso ao matar - #Luca[S]. - 28.03.2015

Vocк fez o certo, colocou o local que a pessoa deve estбr para nгo ser preso! Teste!
Se der algum erro, ou problema avise-nos aqui nesse post!


Re: Ir preso ao matar - JFT - 28.03.2015

Entгo cara, eu testei aqui e aconteceu a seguinte - o player que mato dentro da area de dm foi preso e o cara que morreu dentro da area de dm fica recebendo a mensagem que ele foi solto e ele spawn pra area que ele foi solto.
Mas acontece o seguinte tambem, qualquer player que esta fora da area de dm ele nao consegue pegar arma nenhuma(isto antes de colocar e mesmo com o seu sistema).


Re: Ir preso ao matar - #Luca[S]. - 28.03.2015

PHP код:
forward TirarPrisao(playerid);
new 
LiberarPlayer[MAX_PLAYERS];
public 
OnPlayerDeath(playeridkilleridreason)
{
    if(!
IsPlayerInRangeOfPoint(killeridDistanciaXYZ))
    {
        
RemovePlayerFromVehicle(killerid);
        
SetPlayerVirtualWorld(killerid4);
        
SetPlayerInterior(killerid10);
        
SetPlayerPos(killerid220.0110.0999.1);
        
SendClientMessage(killerid, -1"Vocк foi preso por matar fora da бrea permitida.");
        
LiberarPlayer[killerid] = SetTimerEx("TirarPrisao"1000 60true"i"killerid);
    }
    return 
1;
}
public 
TirarPrisao(playerid)
{
        
SpawnPlayer(playerid);
        
SendClientMessage(playerid, -"Vocк foi solto!");
        return 
1;

Tente agora para ver se para o erro do player que morreu ficar recebendo a mensagem e spawnar ao invйs de quem matar.


Re: Ir preso ao matar - JFT - 28.03.2015

oque foi alterado ?


Re: Ir preso ao matar - #Luca[S]. - 28.03.2015

Quote:
Originally Posted by JFT
Посмотреть сообщение
oque foi alterado ?
PHP код:
LiberarPlayer[killerid] = SetTimerEx("TirarPrisao"1000 60true"i"killerid); 



Re: Ir preso ao matar - JFT - 28.03.2015

sim eu vi depois, entao cara й o seguinte, como meu sistema nao deixa usar arma alguma fora da area de dm, acho que nao й nescessario um outro sistema, concorda ?


Re: Ir preso ao matar - #Luca[S]. - 28.03.2015

Bom, vocк pode tentar verificar o que estб causando isso, pode ser um Timer ou na public OnPlayerUpdate.