[AJUDA] Problema tosco!
#1

Bom, o bug й o seguinte, й uma coisa fбcil de fazer, porйm se tornou complicado. Fiz um sistema de aviso/erro, o jogador digita o comando aparece o TextDraw, no caso usei " TextDrawSetString " porйm quando outro jogador usa o comando, o textdraw se atualiza com os dados do outro comando ou seja, й a mesma coisa que usar " TextDrawShowForAll " й estranho, mais nгo vejo erro algum no code.

pawn Код:
new String[256];
format(String, sizeof(String), "* Olб emilio *");
TextDrawSetString(TextAvisos, String), TextDrawShowForPlayer(playerid, TextAvisos), SetTimerEx("DeletarAviso",6000,false,"i",playerid);
Se alguйm sabe o porque desse problema ocorrer, fico grato!
Reply
#2

jб tive este poblema.

use assim:

Topo bote [MAX_PLAYERS].
pawn Код:
new Text:TextAvisos[MAX_PLAYERS];
quando erra o comando, bote [playerid].
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    new String[128];
    format(String, sizeof(String), "* Olб emilio *");
    return TextDrawSetString(TextAvisos[playerid], String), TextDrawShowForPlayer(playerid, TextAvisos[playerid]), SetTimerEx("DeletarAviso",6000,false,"i",playerid);
}
No OnGameModeInit adicione [i] ao lado de todos TextAvisos,
ficando TextAvisos[i].
pawn Код:
public OnGameModeInit()
{
    for(new i; i < MAX_PLAYERS; ++i)
    {
        TextAvisos[i] = TextDrawCreate( ... ).
        // vai botando em todas as funзхes ...
    }
    return 1;
}

Espero ter ajudado *-*


\/
Reply
#3

Engraзado Caroline, pois jб tentei criando Loop e continua, mesmo assim obrigado !
Nгo intendo como uma coisa tгo fбcil estб me dando trabalho :@
Reply
#4

impossнvel!,
poste como vocк estб usando que eu arrumarei.
Reply
#5

Tambйm achei esse problema muito escroto, atй cheguei a abrir um tуpico --' !
Veja, nгo existe problema, jб tentei de vбrias formas :\

pawn Код:
new Text:TextAvisos[MAX_PLAYERS];

new String[256];
format(String, sizeof(String), "* Olб emilio *");
TextDrawSetString(TextAvisos[playerid], String), TextDrawShowForPlayer(playerid, TextAvisos[playerid]), SetTimerEx("DeletarAviso",6000,false,"i",playerid);

public OnGameModeInit()
{
    for(new i; i < MAX_PLAYERS; ++i)
    {
        TextAvisos[i] = TextDrawCreate(...,"_");
        TextDrawAlignment(TextAvisos[i],...);
        TextDrawBackgroundColor(TextAvisos[i],...);
        TextDrawFont(TextAvisos[i],...);
        TextDrawLetterSize(TextAvisos[i],...);
        TextDrawColor(TextAvisos[i],...);
        TextDrawSetOutline(TextAvisos[i],...);
        TextDrawSetProportional(TextAvisos[i],...);
        TextDrawSetShadow(TextAvisos[i],...);
        TextDrawUseBox(TextAvisos[i], ...);
        TextDrawBoxColor(TextAvisos[i], ...);
        TextDrawTextSize(TextAvisos[i], ...);
    }
    return true;
}
Reply
#6

tenta:
pawn Код:
public OnPlayerConnect(playerid)
{
        TextAvisos[playerid] = TextDrawCreate(...,"_");
        TextDrawAlignment(TextAvisos[playerid],...);
        TextDrawBackgroundColor(TextAvisos[playerid],...);
        TextDrawFont(TextAvisos[playerid],...);
        TextDrawLetterSize(TextAvisos[playerid],...);
        TextDrawColor(TextAvisos[playerid],...);
        TextDrawSetOutline(TextAvisos[playerid],...);
        TextDrawSetProportional(TextAvisos[playerid],...);
        TextDrawSetShadow(TextAvisos[playerid],...);
        TextDrawUseBox(TextAvisos[playerid], ...);
        TextDrawBoxColor(TextAvisos[playerid], ...);
        TextDrawTextSize(TextAvisos[playerid], ...);
        return 1;
}
Reply
#7

Jб tentei tambйm, ainda nгo funciona da forma correta, simplesmente nгo existe conflito!
oq me deixa puto й que isso й uma coisa fбcil de fazer, nгo era para acontecer esse problema!
Reply
#8

me tira uma dъvida, aonde vocк estб botanando isto
pawn Код:
new String[256];
format(String, sizeof(String), "* Olб emilio *");
TextDrawSetString(TextAvisos[playerid], String), TextDrawShowForPlayer(playerid, TextAvisos[playerid]), SetTimerEx("DeletarAviso",6000,false,"i",playerid);
Reply
#9

Num comando normal caroline!
Nгo sei o motivo disso!
@EDIT, EXEMPLO, PARA VOCК VER QUE NГO ESTOU LOKO!

pawn Код:
if(strcmp(cmdtext, "/oidaniela", true)== 0)
{
    new String[256];
    format(String, sizeof(String), "* Olб emilio *");
    TextDrawSetString(TextAvisos[playerid], String), TextDrawShowForPlayer(playerid, TextAvisos[playerid]), SetTimerEx("DeletarAviso",6000,false,"i",playerid);
    return true;
}
Reply
#10

mande a public deletaraviso ...
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)