Quand le joueur йcrit
#1

Bonjour а tous voilа j'ai fais un serveur DM pour m'entrener et je voudrait savoir comment faire pour que quand le joueur est dans l'equipe bleu sa met son nom en bleu et quand il est en rouge sa met en rouge

DM(1) : Voilа je sait pas commet faire

public OnPlayerText(playerid, text[])
{
new string[126], name[30];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s (%d): %s", name, playerid, text);
SendClientMessageToAll(-1, string);
return 0;
}

J'espere que vous avez compris ce que je voulais dire
Reply
#2

Tu change juste la couleur quand le joueur est dans la team bleu ou rouge
Reply
#3

Quand ton joueur choisit son йquipe tu lui mets un SetPlayerColor (https://sampwiki.blast.hk/wiki/SetPlayerColor), et si tu mets bleu, lorsqu'il йcrira зa sera bleu etc!
Reply
#4

Sa je sait mais commen faire pour que il a ?

exemple SendClientMessageToAll(rouge, teamrouge); return SendClientMessageToAll(bleu, teambleu);

Reply
#5

Comme зa
pawn Code:
public OnPlayerText(playerid, text[])
{
    new string[126], name[30];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "%s (%d): {FF0000}%s", name, playerid, text);
    //"{FF0000}" pour rendre le texte en blanc
    SendClientMessageToAll(0x1682F8FF, string);
    //"0x1682F8FF" = du bleu
    return 0;
}
Ainsi avec зa, les joueurs verront par exemple:
Quote:
Kiloutre (0): TADAM
(Le "TADAM" lui sera en blanc mais ici si je met en blanc tu le verras pas donc bon

Si jamais tu veux que la couleur du pseudo corresponde а la couleur du joueur, tu remplaces 0x1682F8FF par GetPlayerColor(playerid) ^^
Donc
pawn Code:
SendClientMessageToAll(0x1682F8FF, string);
se transformera en
pawn Code:
SendClientMessageToAll(GetPlayerColor(playerid), string);
De base dans SA:MP, le texte est en blanc et la couleur du pseudo dans le tchat correspond а la couleur du joueur dans le jeu
Nйanmoins toi tu fais cela toi mкme, ce qui n'est plutфt pas vraiment nйcessaire йtant donnй que la seule diffйrence est l'espace entre l'ID et le pseudo du joueur

PS: Le nombre de caractиre maximal que peut afficher un SendClientMessage est 128, tu dois donc crйer la chaоne string а la taille 128 (+1 pour le nullbyte, donc 129) ^^
La taille maximale d'un pseudo est dйfinie par MAX_PLAYER_NAME, donc tu peux directement faire
pawn Code:
new string[129], name[MAX_PLAYER_NAME+1];
//On ajoute 1, toujours pour le nullbyte
Reply
#6

@Kiloutre : FF0000 = rouge



Et un SendClientMessage c'est 144 caractиres nan ?
Reply
#7

Ca dois кtre pour йvitй le saut de ligne je pense
Reply
#8

new string[126], name[30];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s (%d): {FF0000}%s", name, playerid, text);
//"{FF0000}" pour rendre le texte en blanc
SendClientMessageToAll(GetPlayerColor(playerid), string);
//"0x1682F8FF" = du bleu
return 0;




J'ai modifier et sa marche mais je sait pas comment faire pour que quand il йcrit un truc sdiufsf sa va en rouge et je sait pas comment la modifier
Reply
#9

https://sampwiki.blast.hk/wiki/strcmp_FR
Reply
#10

Oh vi c'est FFFFFF pardon, j'ai l'habitude d'йcrire {FF0000} dans pas mal de ShowPlayerDialog du coup y'a des fois ou je met l'un a la place de l'autre >_<
+En effet la taille de string doit кtre de 145 caractиre vu que le maximum de caractиres affichйs par un SendClientMessage c'est 144

@DeathMatchEnFrancais, tu veux que le tout le message soit en rouge ou juste le pseudo (ou juste le texte) ?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)