SA-MP Forums Archive
[Ajuda] Contador drift bugado! - 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] Contador drift bugado! (/showthread.php?tid=535312)



Contador drift bugado! - best95 - 03.09.2014

Fala galera,Queria saber porque meu contador drift quando do esc volto ele contou os pontos como se eu tivesse jogando..e quando eu dou g em algum jogador e saio pego um carro vou driftar soma os pontos que o outro jogador fez enquando estava de g no carro dele?? oque pode ser? e oque no codigo eu deveria colar aqui??


Re: Contador drift bugado! - Macintosh - 03.09.2014

pawn Код:
new Tick[MAX_PLAYERS];

public OnPlayerUpdate(playerid)
{
    new Float:Pos[3], string[50];
    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    if(GetTickCount() - Tick[playerid] >= 120000)
    {
        if(GetPVarFloat(playerid, "X") == Pos[0] && GetPVarFloat(playerid, "Y") == Pos[1] && GetPVarFloat(playerid, "Z") == Pos[2])
        {
             // Coloque a funзгo pra cancelar os pontos, tal como: Pontos += 0; (suponho que seja assim, muito tempo sem codar rsrs)
        }
    }
    SetPVarFloat(playerid, "X", Pos[0]);
    SetPVarFloat(playerid, "Y", Pos[1]);
    SetPVarFloat(playerid, "Z", Pos[2]);
    Tick[playerid] = GetTickCount();
    return 1;
}
Feito pelo Shadoww5.


Re: Contador drift bugado! - best95 - 03.09.2014

Eu boto todo esse codigo substituindo ou de base?


Re: Contador drift bugado! - best95 - 03.09.2014

Meu OnplayerUpdate

pawn Код:
public OnPlayerUpdate(playerid)
{
    SetPVarInt(playerid, "SegundosTick", gettime());
    if( gettime() - GetPVarInt(playerid, "SegundosTick") > 1) {
    salvarJogador(playerid);
    Msg(playerid, -1, "salvo");
    }
    return 1;
}



Re: Contador drift bugado! - MTCpyedroDN - 03.09.2014

Quote:
Originally Posted by best95
Посмотреть сообщение
Eu boto todo esse codigo substituindo ou de base?
Nгo sei qual eh o modelo do seu mas recomendo esse: https://sampforum.blast.hk/showthread.php?tid=86300


Re: Contador drift bugado! - best95 - 03.09.2014

O modelo do meo e pareзido com esse aqui olha: http://forum.sa-mp.com/archive/index.php/t-402070.html so que eu tirei todos os bugs e modifiquei algumas coisas.. queria so ver o porque de eu ficar de g e depois pego um carro vou drift e soma no ranking os pontos que o cara fez quando eu tava de g no carro dele..


Re: Contador drift bugado! - best95 - 03.09.2014

Ninguem sabe o bug oque й?? o.O


Re: Contador drift bugado! - Macintosh - 03.09.2014

Faz um cуdigo pra verificar se o player й passageiro ispassenger ou PLAYER_STATE_PASSENGER, acho que a funзгo й essa. Se for, faz a mesma coisa que postei anteriormente. Seta adiciona a variбvel += 0.


Re: Contador drift bugado! - best95 - 03.09.2014

Deu isso ae amigo!

(4489) : error 029: invalid expression, assumed zero
(4489 -- 4490) : warning 215: expression has no effect
(4490) : error 001: expected token: ";", but found "}"
(4483) : warning 204: symbol is assigned a value that is never used: "string"

LINHAS DOS ERROS
pawn Код:
+= 0
}
 new Float:Pos[3], string[50];
MEU ONPLAYERUPDATE!

pawn Код:
public OnPlayerUpdate(playerid)
{
    SetPVarInt(playerid, "SegundosTick", gettime());
    if( gettime() - GetPVarInt(playerid, "SegundosTick") > 1) {
    salvarJogador(playerid);
    Msg(playerid, -1, "salvo");
    }
    new Float:Pos[3], string[50];
    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    if(GetTickCount() - Tick[playerid] >= 120000)
    {
        if(GetPVarFloat(playerid, "X") == Pos[0] && GetPVarFloat(playerid, "Y") == Pos[1] && GetPVarFloat(playerid, "Z") == Pos[2])
        {
        += 0
        }
    }
    SetPVarFloat(playerid, "X", Pos[0]);
    SetPVarFloat(playerid, "Y", Pos[1]);
    SetPVarFloat(playerid, "Z", Pos[2]);
    Tick[playerid] = GetTickCount();
    return 1;
}



Re: Contador drift bugado! - StreetGT - 03.09.2014

pawn Код:
public OnPlayerUpdate(playerid)
{
    new Float:Pos[3], string[50];
    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    if(GetTickCount() - Tick[playerid] >= 120000)
    {
        if(GetPVarFloat(playerid, "X") == Pos[0] && GetPVarFloat(playerid, "Y") == Pos[1] && GetPVarFloat(playerid, "Z") == Pos[2])
        {
         SetPlayerScore(playerid, 0);
         salvarJogador(playerid);
        }
    }
    SetPVarFloat(playerid, "X", Pos[0]);
    SetPVarFloat(playerid, "Y", Pos[1]);
    SetPVarFloat(playerid, "Z", Pos[2]);
    Tick[playerid] = GetTickCount();
    return 1;
}
Й essa a logica ...