Variбvel string para cada player -
RafaelOsio - 07.07.2015
Olб amigos. Eu precisava criar uma variбvel do tipo string para cada player para armazenar uma cor, neste formato "0xFF0000FF"(por exemplo).
Jб tentei fazer assim:
//Criando a variбvel(global):
Код:
new cor[MAX_PLAYERS][123];
No comando, quando irб receber o valor:
Код:
cor[playerid] = "0xFF0000FF";
E na hora de utilizar este valor:
Код:
format(string, sizeof (string), "{%06x}%s {FFFFFF}[{%06x}XX(a){FFFFFF}] [{%06x}%i{FFFFFF}]: %s", EscolhaCor[playerid][122] >>> 8, name, EscolhaCor[playerid][122] >>> 8, EscolhaCor[playerid][122] >>> 8, playerid, text);
SendClientMessageToAll(Cor_Staff, string);
E assim tambйm, alterado o 122 para 0:
Код:
format(string, sizeof (string), "{%06x}%s {FFFFFF}[{%06x}XX(a){FFFFFF}] [{%06x}%i{FFFFFF}]: %s", EscolhaCor[playerid][0] >>> 8, name, EscolhaCor[playerid][0] >>> 8, EscolhaCor[playerid][0] >>> 8, playerid, text);
SendClientMessageToAll(Cor_Staff, string);
O objetivo deste sistema, й o player poder escolher uma cor e quando ele falar no chat, o nick dele aparecer com a cor escolhida. Este foi a maneira que achei menos complicado de fazer. Se vocкs conhecerem outro modo, aceito
. Se nгo souberem, apenas a soluзгo desse problema ajuda u.u. Obrigado desde jб.
Re: Variбvel string para cada player -
Bruno13 - 07.07.2015
Formate sua string com a color em HEXADECIMAL, e quando for aplicar a cor use a funзгo HexToInt:
pawn Код:
/*MODO DE USO 'HexToInt'*/
SetPlayerColor(playerid, HexToInt("0xFF0000FF"));
stock HexToInt(string[])
{
if(!string[0]) return 0;
new cur = 1, res = 0;
for(new i = strlen(string); i > 0; i--)
{
res += cur * (string[i - 1] - ((string[i - 1] < 58) ? (48) : (55)));
cur = cur * 16;
}
return res;
}
https://sampwiki.blast.hk/wiki/Colors_List
@EDIT
Mude sua string para
new cor[MAX_PLAYERS][10];
Re: Variбvel string para cada player -
RafaelOsio - 07.07.2015
Bah obrigado cara. Nгo havia procurado direito rsrs