[Ajudinha] Perseguiзгo
#1

Entгo pessoal, fiz um sisteminha de perseguiзгo aqui mais ele deu uns probleminhas...

O sistema de perseguiзгo й para cops. O policial usa /perseguir e um checkpoint vai seguindo o player, tipo /procurar...

Vamos as explicaзхes...

Eu primeiro fiz isso:

PHP код:
    if(strcmp(cmd"/perseguir"true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
               if(
IsACop(playerid))
               {
                
tmp strtok(cmdtextidx);
                if(!
strlen(tmp))
                {
                    
SendClientMessage(playeridCOLOR_WHITE"USE: /perseguir [id]");
                    return 
1;
                }
                  
giveplayerid ReturnUser(tmp);
                if(
giveplayerid == playerid) return SendClientMessage(playeridCOLOR_YELLOW,"Vocк nгo pode se procurar!");
                
SetTimer("Perseguir"1000true);
                
format(stringsizeof(string), "Perseguindo o id %s! Siga o checkpoint!",giveplayerid);
                
SendClientMessage(playeridCOLOR_YELLOWstring);
                
Perseguindo[playerid] = 1;
            }
        }
        else
        {
            
SendClientMessage(playeridCOLOR_GREY"   Vocк nгo й da Policia!");
            return 
1;
        }
        return 
1;
       } 
Public:

PHP код:
forward Perseguir(playeridgiveplayerid);
public 
Perseguir(playeridgiveplayerid)
{
    new 
Float:X,Float:Y,Float:Z;
    
GetPlayerPos(giveplayeridXYZ);
    
SetPlayerCheckpoint(playeridXYZ5);

Entгo eu usei um settimer para chamar a public para getar o checkpoint no player a cada 1 segundo.
O problema й que o checkpoint aparece para o giveplayer, e nгo para o player.

Ai eu fiz de outra maneira:

PHP код:
    if(strcmp(cmd"/perseguir"true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
               if(
IsACop(playerid))
               {
                
tmp strtok(cmdtextidx);
                if(!
strlen(tmp))
                {
                    
SendClientMessage(playeridCOLOR_WHITE"USE: /perseguir [id]");
                    return 
1;
                }
                  
giveplayerid ReturnUser(tmp);
                if(
giveplayerid == playerid) return SendClientMessage(playeridCOLOR_YELLOW,"Vocк nгo pode se procurar!");
                new 
Float:X,Float:Y,Float:Z;
                   
GetPlayerPos(giveplayeridXYZ);
                
SetPlayerCheckpoint(playeridXYZ5);
                
format(stringsizeof(string), "Perseguindo o id %s! Siga o checkpoint!",giveplayerid);
                
SendClientMessage(playeridCOLOR_YELLOWstring);
                
Perseguindo[playerid] = 1;
            }
        }
        else
        {
            
SendClientMessage(playeridCOLOR_GREY"   Vocк nгo й da Policia!");
            return 
1;
        }
        return 
1;
       } 
Mais nгo segue o player e nгo consegui achar uma maneira de fazer seguir o player...

Essa й minha duvida, esqueci de postar alguma coisa? Avisa ae
Reply
#2

pawn Код:
SetTimerEx("perseguir", 1000, true, "i", playerid);
Usa SetTimerEx ;3
Reply
#3

Shick, nгo funfou aqui, deu na mesma do que com o Settimer normal. Aparece o checkpoint para o giveplayerid e nгo para o playerid.
Reply
#4

pawn Код:
SetTimerEx("Perseguir", 1000, true, "ii", playerid, giveplayerid);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)