27.09.2010, 19:35
bom, percebi que em muitos servers, o SendClientMessage se mistura com o chat, ai tudo vira uma confuseba danada, entao, decidi criar o SendClientMessage em TextDraw, como funciona ao invйs de ele mandar a mensagem la em cima junto com chat, ele manda a mensagem, numa textdraw, ao lado do radar, boa ideia nao
ja fiz boa parte, a stock etc (aqui o fs inteiro):
Bom, ele й pequeno atй, se conseguirem, por favor nгo usem sem minha permissгo.
Mas devem ta se perguntando, qual o problema O problema й que nгo sei como posso fazer para que por exemplo:
SendClientMessage(.., "bla");
SendClientMessage(.., "bla2");
e fique em ordem, assim, eu mandei a primeira mensagem, que fica em ultimo la na lista de 5 linhas, ai quando eu mando outra mensagem, como posso faz para mandar o "bla", que esta na 5Є linha, para a quarta, sendo substituido pelo "bla2" na 5Є linha
e assim por diante, nao sei se deu para me entender
ja fiz boa parte, a stock etc (aqui o fs inteiro):
pawn Код:
new Text:chat5;
new Text:chat4;
new Text:chat3;
new Text:chat2;
new Text:chat1;
public OnFilterScriptInit()
{
chat5 = TextDrawCreate(153.000000, 327.000000, "Chat 5");
TextDrawBackgroundColor(chat5, 255);
TextDrawFont(chat5, 1);
TextDrawLetterSize(chat5, 0.779998, 1.900000);
TextDrawColor(chat5, -1);
TextDrawSetOutline(chat5, 0);
TextDrawSetProportional(chat5, 1);
TextDrawSetShadow(chat5, 1);
chat4 = TextDrawCreate(153.000000, 346.000000, "Chat 4");
TextDrawBackgroundColor(chat4, 255);
TextDrawFont(chat4, 1);
TextDrawLetterSize(chat4, 0.779998, 1.900000);
TextDrawColor(chat4, -1);
TextDrawSetOutline(chat4, 0);
TextDrawSetProportional(chat4, 1);
TextDrawSetShadow(chat4, 1);
chat3 = TextDrawCreate(153.000000, 365.000000, "Chat 3");
TextDrawBackgroundColor(chat3, 255);
TextDrawFont(chat3, 1);
TextDrawLetterSize(chat3, 0.779998, 1.900000);
TextDrawColor(chat3, -1);
TextDrawSetOutline(chat3, 0);
TextDrawSetProportional(chat3, 1);
TextDrawSetShadow(chat3, 1);
chat2 = TextDrawCreate(153.000000, 383.000000, "Chat 2");
TextDrawBackgroundColor(chat2, 255);
TextDrawFont(chat2, 1);
TextDrawLetterSize(chat2, 0.779998, 1.900000);
TextDrawColor(chat2, -1);
TextDrawSetOutline(chat2, 0);
TextDrawSetProportional(chat2, 1);
TextDrawSetShadow(chat2, 1);
chat1 = TextDrawCreate(153.000000, 402.000000, "Chat 1");
TextDrawBackgroundColor(chat1, 255);
TextDrawFont(chat1, 1);
TextDrawLetterSize(chat1, 0.779998, 1.900000);
TextDrawColor(chat1, -1);
TextDrawSetOutline(chat1, 0);
TextDrawSetProportional(chat1, 1);
TextDrawSetShadow(chat1, 1);
for(new i; i < MAX_PLAYERS; i ++)
{
if(IsPlayerConnected(i))
{
TextDrawShowForPlayer(i, chat5);
TextDrawShowForPlayer(i, chat4);
TextDrawShowForPlayer(i, chat3);
TextDrawShowForPlayer(i, chat2);
TextDrawShowForPlayer(i, chat1);
}
}
return 1;
}
public OnFilterScriptExit()
{
TextDrawHideForAll(chat5);
TextDrawDestroy(chat5);
TextDrawHideForAll(chat4);
TextDrawDestroy(chat4);
TextDrawHideForAll(chat3);
TextDrawDestroy(chat3);
TextDrawHideForAll(chat2);
TextDrawDestroy(chat2);
TextDrawHideForAll(chat1);
TextDrawDestroy(chat1);
return 1;
}
public OnPlayerConnect(playerid)
{
TextDrawShowForPlayer(playerid, chat5);
TextDrawShowForPlayer(playerid, chat4);
TextDrawShowForPlayer(playerid, chat3);
TextDrawShowForPlayer(playerid, chat2);
TextDrawShowForPlayer(playerid, chat1);
return 1;
}
stock SendClientMessageEx(playerid, color, const message[])
{
TextDrawSetString(chat1, message[]);
return 1;
}
Mas devem ta se perguntando, qual o problema O problema й que nгo sei como posso fazer para que por exemplo:
SendClientMessage(.., "bla");
SendClientMessage(.., "bla2");
e fique em ordem, assim, eu mandei a primeira mensagem, que fica em ultimo la na lista de 5 linhas, ai quando eu mando outra mensagem, como posso faz para mandar o "bla", que esta na 5Є linha, para a quarta, sendo substituido pelo "bla2" na 5Є linha
e assim por diante, nao sei se deu para me entender