SA-MP Forums Archive
[DUV] TextDraw - 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: [DUV] TextDraw (/showthread.php?tid=222706)



[DUV] TextDraw - GuikBretas - 07.02.2011

Pessoal to com uma dъvida, como eu faзo para pegar a informaзгo daquele tempo? tipo assim, eu quero colocar o tempo da prisгo atualizando no canto da tela. sу que eu nгo sei como faзo pra pegar o tempo que estб correndo, igual no /horas, quando digita aparece lб, mais nгo aparece atualizando.

eu fiz isso:

pawn Код:
//Nas variбveis pJailed.
                                for(new i; i < MAX_PLAYERS; i ++)
                {
                    if(IsPlayerConnected(i))
                    {
                        TextDrawShowForPlayer(i, Textdraw0);
                        TextDrawShowForPlayer(i, Textdraw1); //ESSE TEXTDRAW Й O TEMPO
                    }
                }
sу que fica em 0 sempre o tempo.

pawn Код:
//OnGameModeInit
    Textdraw0 = TextDrawCreate(494.000000, 101.000000, "Tempo na Prisao:");
    TextDrawBackgroundColor(Textdraw0, 255);
    TextDrawFont(Textdraw0, 2);
    TextDrawLetterSize(Textdraw0, 0.280000, 1.200000);
    TextDrawColor(Textdraw0, 65535);
    TextDrawSetOutline(Textdraw0, 0);
    TextDrawSetProportional(Textdraw0, 1);
    TextDrawSetShadow(Textdraw0, 1);
    TextDrawUseBox(Textdraw0, 1);
    TextDrawBoxColor(Textdraw0, 255);
    TextDrawTextSize(Textdraw0, 636.000000, 4.000000);

    Textdraw1 = TextDrawCreate(615.000000, 102.000000, "0");
    TextDrawBackgroundColor(Textdraw1, 255);
    TextDrawFont(Textdraw1, 1);
    TextDrawLetterSize(Textdraw1, 0.310000, 1.000000);
    TextDrawColor(Textdraw1, -65281);
    TextDrawSetOutline(Textdraw1, 0);
    TextDrawSetProportional(Textdraw1, 1);
    TextDrawSetShadow(Textdraw1, 1);



Re: [DUV] TextDraw - rjjj - 08.02.2011

Basta formatar uma string com a variбvel do Tempo do jogador, e depois colocб-la para aparecer no TextDraw

pawn Код:
for(new i;i < MAX_PLAYERS; i ++)
    {
        if(IsPlayerConnected(i))
        {
            TextDrawHideForPlayer(i, Textdraw0);
            TextDrawHideForPlayer(i, Textdraw1);
            TextDrawShowForPlayer(i, Textdraw0);
            new tempostr[10];
            format(tempostr, 5, "%i",PlayerInfo[i][pJailed]);
            TextDrawSetString(Textdraw1, tempostr);
            TextDrawShowForPlayer(i, Textdraw1);
        }
    }
Espero ter ajudado


Re: [DUV] TextDraw - GuikBretas - 08.02.2011

Ficou em
Код:
Tempo da Prisгo: 1
e nгo sai de 1


Re: [DUV] TextDraw - rjjj - 08.02.2011

Quote:
Originally Posted by GuikBretas
Посмотреть сообщение
Ficou em
Код:
Tempo da Prisгo: 1
e nгo sai de 1
Pensei que a dъvida era sу sobre a identificaзгo do tempo


Bom, fiz um cуdigo completo, qualquer coisa й sу adaptar o loop ao seu SetTimer:


pawn Код:
//No Topo do GM:

new bool:ChecouOManolo[MAX_PLAYERS];
new QueNooB[MAX_PLAYERS];


//No OnGameModeInit:

SetTimer("TensO", 1000, true);


//No Final do GM:

forward TensO();
public TensO()
{
    for(new i;i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i) && PlayerInfo[i][pJailed] > 0)
        {
            if(!ChecouOManolo[i])
            {
                QueNooB[i] = PlayerInfo[i][pJailed];
                ChecouOManolo[i] = true;
            }
            TextDrawHideForPlayer(i, Textdraw0);
            TextDrawHideForPlayer(i, Textdraw1);
            TextDrawShowForPlayer(i, Textdraw0);
            new tempostr[10];
            format(tempostr, 5, "%i",QueNooB[i]);
            TextDrawSetString(Textdraw1, tempostr);
            TextDrawShowForPlayer(i, Textdraw1);
            QueNooB[i] -= 1;
        }
        else{QueNooB[i] = 0;}
    }
    return 1;
}

Espero ter ajudado


Re: [DUV] TextDraw - GuikBretas - 08.02.2011

Aeeeeeeeeee! consegui vlw xD!!