[Ajuda] TextDraw Reaparece sem ser Chamada
#1

Caros Amiguinhos do Samp. To com um Problema Bem chato aqui.
E Como eu sou um Noob nessa Porra! Nгo consigo resolver.

Eu fiz ai a tela de Login, com textdrawn, tudo bonitinho.
[Image: sa-mp-000.png]

Essas Textsdraws ai, que sгo 9, й para aparecer apenas na OnPlayerRequestClass, que й onde se encontra tambйm a Dialog da tela de Login.

Beleza, o Player deu Spawn e as Textdraws Sairam
[Image: sa-mp-001.png]

Agora vem a Caralha! Vocк Joga 30 Segundos, ou um pouco mais, e 1 maldita volta pra porra da tela!
Ninguйm chamou essa caralha e ela volta pra porra da tela! Porque?
[Image: sa-mp-002.png]

Ai fica tudo feio essa porra! Como resolver isso ae?
- As TextDrawn foram Criadas no Zamaroth
- Sу usei a funзгo TextDrawShowForPlayer no OnPlayerRequestClass
- Sу usei a Funзгo TextDrawHideForPlayer no OnPlayerSpawn
- Se Quiserem, eu posto o cуdigo delas todinho aqui.
Reply
#2

Tenta usar: TextDrawShowForPlayer no OnPlayerConnect
Remove da: OnPlayerRequestClass
E Adiciona: TextDrawHideForPlayer no OnPlayerSpawn
Reply
#3

Quote:
Originally Posted by Coringa_Vilao
Посмотреть сообщение
Tenta usar: TextDrawShowForPlayer no OnPlayerConnect
Remove da: OnPlayerRequestClass
E Adiciona: TextDrawHideForPlayer no OnPlayerSpawn
Problema Persiste!
Reply
#4

Cуdigos? Existe algum timer que chame alguma funзгo que mostra as textdraws? Posta tudo relacionado a elas aн.
Reply
#5

Vocк seta alguma variavel quando o player loga, Logado[playerid] = true?
Reply
#6

Eu uso a
Player[playerid][pJogando] == true

---
Pergunta Extra:
Se eu fizer um SetTimer infinita que fique Escondendo as TextDraws, com o tempo 1 de Milisegundo, infinitamente
Causaria algum problema?

Seria uma Soluзгo "Meia-Boca", atй eu resolver o problema de fato!
Reply
#7

Quote:
Originally Posted by MarllonGTA
Посмотреть сообщение
Eu uso a
Player[playerid][pJogando] == true

---
Pergunta Extra:
Se eu fizer um SetTimer infinita que fique Escondendo as TextDraws, com o tempo 1 de Milisegundo, infinitamente
Causaria algum problema?

Seria uma Soluзгo "Meia-Boca", atй eu resolver o problema de fato!
Acho que causaria LAG....
Reply
#8

Quote:
Originally Posted by ipsLeon
Посмотреть сообщение
Cуdigos? Existe algum timer que chame alguma funзгo que mostra as textdraws? Posta tudo relacionado a elas aн.
Topo da GameMode
pawn Код:
new Text:TextLogin0;
new Text:TextLogin1;
new Text:TextLogin2;
new Text:TextLogin3;
new Text:TextLogin4;
new Text:TextLogin5;
new Text:TextLogin6;
new Text:TextLogin7;
new Text:TextLogin8;
new bool: LoginTextDraws[MAX_PLAYERS];
As TextDrawn
pawn Код:
TextLogin0 = TextDrawCreate(643.000000, 3.000000, "#");
    TextDrawBackgroundColor(TextLogin0, 255);
    TextDrawFont(TextLogin0, 0);
    TextDrawLetterSize(TextLogin0, 0.500000, 49.099983);
    TextDrawColor(TextLogin0, -1);
    TextDrawSetOutline(TextLogin0, 0);
    TextDrawSetProportional(TextLogin0, 1);
    TextDrawSetShadow(TextLogin0, 1);
    TextDrawUseBox(TextLogin0, 1);
    TextDrawBoxColor(TextLogin0, -16777066);
    TextDrawTextSize(TextLogin0, 492.000000, 40.000000);

    TextLogin1 = TextDrawCreate(498.000000, 383.000000, "#");
    TextDrawBackgroundColor(TextLogin1, 255);
    TextDrawFont(TextLogin1, 0);
    TextDrawLetterSize(TextLogin1, 0.500000, 6.899999);
    TextDrawColor(TextLogin1, -1);
    TextDrawSetOutline(TextLogin1, 0);
    TextDrawSetProportional(TextLogin1, 1);
    TextDrawSetShadow(TextLogin1, 1);
    TextDrawUseBox(TextLogin1, 1);
    TextDrawBoxColor(TextLogin1, -16777066);
    TextDrawTextSize(TextLogin1, 0.000000, 0.000000);

    TextLogin2 = TextDrawCreate(500.000000, 3.000000, "#");
    TextDrawBackgroundColor(TextLogin2, 255);
    TextDrawFont(TextLogin2, 0);
    TextDrawLetterSize(TextLogin2, 0.500000, 41.499977);
    TextDrawColor(TextLogin2, -1);
    TextDrawSetOutline(TextLogin2, 0);
    TextDrawSetProportional(TextLogin2, 1);
    TextDrawSetShadow(TextLogin2, 1);
    TextDrawUseBox(TextLogin2, 1);
    TextDrawBoxColor(TextLogin2, 255);
    TextDrawTextSize(TextLogin2, 489.000000, 0.000000);

    TextLogin3 = TextDrawCreate(500.000000, 380.000000, "#");
    TextDrawBackgroundColor(TextLogin3, 255);
    TextDrawFont(TextLogin3, 0);
    TextDrawLetterSize(TextLogin3, 0.500000, -0.300000);
    TextDrawColor(TextLogin3, -1);
    TextDrawSetOutline(TextLogin3, 0);
    TextDrawSetProportional(TextLogin3, 1);
    TextDrawSetShadow(TextLogin3, 1);
    TextDrawUseBox(TextLogin3, 1);
    TextDrawBoxColor(TextLogin3, 255);
    TextDrawTextSize(TextLogin3, 0.000000, 0.000000);

    TextLogin5 = TextDrawCreate(568.000000, 41.000000, "Seja bem vindo a~n~Nova Faccoes City~n~ ~n~Jogo Dinamico~n~Mais Atividades~n~Novas favelas");
    TextDrawAlignment(TextLogin5, 2);
    TextDrawBackgroundColor(TextLogin5, 255);
    TextDrawFont(TextLogin5, 2);
    TextDrawLetterSize(TextLogin5, 0.300000, 1.300000);
    TextDrawColor(TextLogin5, -1);
    TextDrawSetOutline(TextLogin5, 0);
    TextDrawSetProportional(TextLogin5, 1);
    TextDrawSetShadow(TextLogin5, 1);

    TextLogin4 = TextDrawCreate(568.000000, 161.000000, "Estaremos sempre~n~sempre atualizando~n~para melhorar~n~cada vez mais~n~sua experiencia~n~no Faccoes City");
    TextDrawAlignment(TextLogin4, 2);
    TextDrawBackgroundColor(TextLogin4, 255);
    TextDrawFont(TextLogin4, 2);
    TextDrawLetterSize(TextLogin4, 0.300000, 1.300000);
    TextDrawColor(TextLogin4, -1);
    TextDrawSetOutline(TextLogin4, 0);
    TextDrawSetProportional(TextLogin4, 1);
    TextDrawSetShadow(TextLogin4, 1);

    TextLogin6 = TextDrawCreate(568.000000, 286.000000, "Clique em Jogar~n~e diverta-se!~n~ ~n~Volte sempre!");
    TextDrawAlignment(TextLogin6, 2);
    TextDrawBackgroundColor(TextLogin6, 255);
    TextDrawFont(TextLogin6, 2);
    TextDrawLetterSize(TextLogin6, 0.300000, 1.300000);
    TextDrawColor(TextLogin6, -1);
    TextDrawSetOutline(TextLogin6, 0);
    TextDrawSetProportional(TextLogin6, 1);
    TextDrawSetShadow(TextLogin6, 1);

    TextLogin7 = TextDrawCreate(249.000000, 385.000000, "nao fazemos apologias a crimes, drogas e prostituicao.~n~jamais leve a experiencia deste jogo para a vida!~n~");
    TextDrawAlignment(TextLogin7, 2);
    TextDrawBackgroundColor(TextLogin7, 255);
    TextDrawFont(TextLogin7, 2);
    TextDrawLetterSize(TextLogin7, 0.300000, 1.300000);
    TextDrawColor(TextLogin7, -1);
    TextDrawSetOutline(TextLogin7, 0);
    TextDrawSetProportional(TextLogin7, 1);
    TextDrawSetShadow(TextLogin7, 1);

    TextLogin8 = TextDrawCreate(249.000000, 409.000000, "Jogo nao recomendado para menores de 18 anos.~n~nao nos responsabilizamos por mods e Skins feitos por terceiros.~n~Anti-Modding");
    TextDrawAlignment(TextLogin8, 2);
    TextDrawBackgroundColor(TextLogin8, 255);
    TextDrawFont(TextLogin8, 2);
    TextDrawLetterSize(TextLogin8, 0.300000, 1.300000);
    TextDrawColor(TextLogin8, -1);
    TextDrawSetOutline(TextLogin8, 0);
    TextDrawSetProportional(TextLogin8, 1);
    TextDrawSetShadow(TextLogin8, 1);
Stocks
pawn Код:
LoginTextDrawHideForPlayer(playerid) //Fazer as TextDraw Sumir
{
    TextDrawHideForPlayer(playerid, TextLogin0);
    TextDrawHideForPlayer(playerid, TextLogin1);
    TextDrawHideForPlayer(playerid, TextLogin2);
    TextDrawHideForPlayer(playerid, TextLogin3);
    TextDrawHideForPlayer(playerid, TextLogin4);
    TextDrawHideForPlayer(playerid, TextLogin5);
    TextDrawHideForPlayer(playerid, TextLogin6);
    TextDrawHideForPlayer(playerid, TextLogin7);
    TextDrawHideForPlayer(playerid, TextLogin8);
    LoginTextDraws[playerid] = false;
    return 1;
}

LoginTextDrawShowForPlayer(playerid) //Fazer as TextDraw Aparecer
{
    TextDrawShowForPlayer(playerid, TextLogin0);
    TextDrawShowForPlayer(playerid, TextLogin1);
    TextDrawShowForPlayer(playerid, TextLogin2);
    TextDrawShowForPlayer(playerid, TextLogin3);
    TextDrawShowForPlayer(playerid, TextLogin4);
    TextDrawShowForPlayer(playerid, TextLogin5);
    TextDrawShowForPlayer(playerid, TextLogin6);
    TextDrawShowForPlayer(playerid, TextLogin7);
    TextDrawShowForPlayer(playerid, TextLogin8);
    LoginTextDraws[playerid] = true;
    return 1;
}
OnPlayerConnect
pawn Код:
LoginTextDrawHideForPlayer(playerid);
    SetTimerEx("OnPlayerConnected", 250, false, "i", playerid);
OnPlayerSpawn
pawn Код:
if(LoginTextDraws[playerid])
    {
        LoginTextDrawHideForPlayer(playerid);
    }
OnPlayerUpdate @Edit Aqui na й tambйm sugestгo da Board Inglesa, pois eu sу dava a funзгo pra sumir as TextDraw no OnPlayerSpawn finalizava
pawn Код:
if (LoginTextDraws[playerid] && Player[playerid][pJogando] == true)
    {
        LoginTextDrawHideForPlayer(playerid);
    }
Forward (Sugestгo da Board Inglesa, to com o mesmo Tуpico la
pawn Код:
forward OnPlayerConnected(playerid);
public OnPlayerConnected(playerid)
{
    LoginTextDrawShowForPlayer(playerid);
    return 1;
}

Saiu embolado?
Reply
#9

Eu faria assim
PHP код:
public OnPlayerRequestClass
{
    if(
Player[playerid][pJogando] == false)
    {
        
TextDrawShowForPlayer(playeridTextLogin0);
    
TextDrawShowForPlayer(playeridTextLogin1);
    
TextDrawShowForPlayer(playeridTextLogin2);
    
TextDrawShowForPlayer(playeridTextLogin3);
    
TextDrawShowForPlayer(playeridTextLogin4);
    
TextDrawShowForPlayer(playeridTextLogin5);
    
TextDrawShowForPlayer(playeridTextLogin6);
    
TextDrawShowForPlayer(playeridTextLogin7);
    
TextDrawShowForPlayer(playeridTextLogin8);
    }
    return 
1;

depois

PHP код:
public OnPlayerSpawn(playerid)
{
    if(
Player[playerid][pJogando] == true)
    {
        
TextDrawHideForPlayer(playeridTextLogin0);
    
TextDrawHideForPlayer(playeridTextLogin1);
    
TextDrawHideForPlayer(playeridTextLogin2);
    
TextDrawHideForPlayer(playeridTextLogin3);
    
TextDrawHideForPlayer(playeridTextLogin4);
    
TextDrawHideForPlayer(playeridTextLogin5);
    
TextDrawHideForPlayer(playeridTextLogin6);
    
TextDrawHideForPlayer(playeridTextLogin7);
    
TextDrawHideForPlayer(playeridTextLogin8);
    }
    return 
1;

Qualquer erro me avise
Reply
#10

Quote:
Originally Posted by garotin
Посмотреть сообщение
Eu faria assim
Qualquer erro me avise
O Erro ainda persiste, infelizmente.
Eu Posso destruir a TextDrawn sу para o Playerid?

Eu ja tentei usar o TextDrawDestroy.
Atй que funionou bem, mas quando reloguei, sem desligar o servidor, as TextDraws nгo aparecem (Obvio, eu destrui elas).
-------
@Edit
Ou Entгo testar a velocidade da OPU, pra ver se a Public fica escondendo as textdraws enquanto ele joga.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)