Portal SAMP
[Ajuda] PlayerTextDrawHide ou PlayerTextDrawDestroy? - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] PlayerTextDrawHide ou PlayerTextDrawDestroy? (/showthread.php?tid=3403)



PlayerTextDrawHide ou PlayerTextDrawDestroy? - aboutblank - 07/03/2023

Uma dúvida com o textdraws

Se eu usar PlayerTextDrawHide é como usar PlayerTextDrawDestroy?

Estou interessado em saber como gerenciar corretamente o limite de textdraws, uso um servidor dl e não quero bloquear o cliente ou ultrapassar esse limite.

Agora estou usando PlayerTextDrawHide quando quero esmaecer um desenho de texto e destruir em OnGameModeExit quando o modo de jogo para.


RE: PlayerTextDrawHide ou PlayerTextDrawDestroy? - xbruno1000x - 07/03/2023

Não, são coisas distintas. Hide apenas esconde, porém mantém o objeto criado.


RE: PlayerTextDrawHide ou PlayerTextDrawDestroy? - Vel - 07/03/2023

Você pode mostrar no máximo 2304 na tela do jogador.
E criar 256 para CADA jogador.

Em relação a player-textdraws, como você deu de exemplo, acho que não precisa se preocupar, apenas crie quando o jogador conectar e destrua quando ele desconectar.


RE: PlayerTextDrawHide ou PlayerTextDrawDestroy? - aboutblank - 08/03/2023

Existe uma maneira de ver os textdraws ocupados dentro do servidor como se eu fosse ver os dados do Client Network Stats?

[Imagem: 79087-a67299943fbe868617a9f8d8ff9db8da.jpg]


RE: PlayerTextDrawHide ou PlayerTextDrawDestroy? - White_Blue - 08/03/2023

(08/03/2023 03:55)aboutblank Escreveu: Existe uma maneira de ver os textdraws ocupados dentro do servidor como se eu fosse ver os dados do Client Network Stats?

[Imagem: 79087-a67299943fbe868617a9f8d8ff9db8da.jpg]

Assim creio que não, mas é possível armazenar as textdraws em uma variável e contá-las em um loop.


Exemplo:
Código PHP:
new PlayerTextDraws[MAX_PLAYERS][1];

public 
OnPlayerConnect(playerid) {
     PlayerTextDraws[playerid][0] = CreatePlayerTextDraw(playerid320.0240.0"_");
     return 1;
}

CMD:textdrawscriadas(playerid) {
    new count 0str[128];
    for(new 0sizeof(PlayerTextDraws); i++) {
     count++;
   }
    format(strsizeof(str), "{FFFFFF}Existem %d textdraws criadas!"count);
    ShowPlayerDialog(playerid0DIALOG_STYLE_MSGBOX"Textdraw"str"OK""");
    return 1;