SA-MP Forums Archive
[Ajuda] OnPlayerUpdate - 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] OnPlayerUpdate (/showthread.php?tid=390302)



OnPlayerUpdate - Wallker - 05.11.2012

pawn Код:
public OnPlayerUpdate(playerid)
{
    new strr[28];
    new Float:colete[MAX_PLAYERS],
    Float:lifee[MAX_PLAYERS];
    GetPlayerArmour(playerid, colete[playerid]);
    format(strr, 28, "~g~~h~~h~Vida: ~r~~h~~h~%f", lifee[playerid]);
    TextDrawSetString(Textdraw6[playerid], strr);
    format(strr, 28, "~g~~h~~h~Colete: ~r~~h~~h%f", colete[playerid]);
    TextDrawSetString(Textdraw6[playerid], strr);
    return true;
}
Bom compila tudo normal etc.. mais eu entro no server ele crash.. oque tem de errado?


Re: OnPlayerUpdate - @Riichard - 05.11.2012

Usa um SetTimer/Ex.

Se usar OnPlayerUpdate, vai ficar atualizando constantemente em menos de 1 segundo.

This forum requires that you wait 120 seconds between posts. Please try again in 37 seconds.


Re: OnPlayerUpdate - Wallker - 05.11.2012

eu tentei, porem sу funciona com o id 0 :O, o id 1-2-3 nao atualiza.. fica do mesmo geito de quando a textdraw й criada..


Re: OnPlayerUpdate - @Riichard - 05.11.2012

Faзa do modo:
pawn Код:
// GameModeInit
SetTimer("AtualizandoTD", 1000, true);
for (new r = 0; r < MAX_PLAYERS; r++)
{
      // TextDraw
}

// -- Qualquer lugar(fora de publics/comandos)
forward AtualizandoTD();
public AtualizandoTD()
{
    for(new r; r<MAX_PLAYERS; r++)
    {
        if(IsPlayerConnected(r))
        {
            new strr[28];
            new Float:colete[MAX_PLAYERS],
            new Float:lifee[MAX_PLAYERS];
            GetPlayerArmour(playerid, colete[r]);
            format(strr, 28, "~g~~h~~h~Vida: ~r~~h~~h~%f", lifee[r]);
            TextDrawSetString(Textdraw6[r], strr);
            format(strr, 28, "~g~~h~~h~Colete: ~r~~h~~h%f", colete[r]);
            TextDrawSetString(Textdraw6[r], strr);
        }
    }
    return 1;
}
Tente!

Nгo modifiquei o code, so fiz o timer.


Re: OnPlayerUpdate - Wallker - 05.11.2012

nao tem como usar pelo onplayerupdate?


Re: OnPlayerUpdate - ViniBorn - 05.11.2012

Quote:
Originally Posted by Wallker
Посмотреть сообщение
nao tem como usar pelo onplayerupdate?
Seria pйssimo


Re: OnPlayerUpdate - Wallker - 05.11.2012

pelo lag?


Re: OnPlayerUpdate - ViniBorn - 05.11.2012

OnPlayerUpdate й usado mais de 30x por segundo, e atualizar isso uma vez por segundo й mais que suficiente ...


Re: OnPlayerUpdate - [JD]BlackFire - 05.11.2012

Quote:
Originally Posted by Viniborn
Посмотреть сообщение
OnPlayerUpdate й usado mais de 30x por segundo, e atualizar isso uma vez por segundo й mais que suficiente ...
vou ter que discordar Vini, esta callback й chamada conforme as atualizaзхes do jogador, como ela mesmo diz,
entгo, vai depender da velocidade do jogador, o nъmero de jogadores ao redor deste player, e a taxa de atualizaзгo configurada para o mesmo no server.cfg, mas mesmo assim, ela й muito veloz.

o 'LAG' й praticamente nulo com tгo pouco cуdigo assim.

e falo isso por semanas de testes


Re: OnPlayerUpdate - ViniBorn - 05.11.2012

Quote:
Originally Posted by [JD]BlackFire
Посмотреть сообщение
vou ter que discordar Vini, esta callback й chamada conforme as atualizaзхes do jogador, como ela mesmo diz,
entгo, vai depender da velocidade do jogador, o nъmero de jogadores ao redor deste player, e a taxa de atualizaзгo configurada para o mesmo no server.cfg, mas mesmo assim, ela й muito veloz.

o 'LAG' й praticamente nulo com tгo pouco cуdigo assim.

e falo isso por semanas de testes
30 й uma mйdia. Jб fiz testes com mais de 200 jogadores online, e a faixa nгo varia tanto assim.
Mesmo que fossem apenas 5 vezes por segundo, nгo valeria a pena.