• 09 Juin 2024, 09:10:17


Auteur Sujet: Problème commande et chat RP  (Lu 1285 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Problème commande et chat RP
« le: 08 Avril 2013, 15:51:31 »
Bonjour,

J'ai fais une commande /ooc pour parler en ooc et j'aimerais savoir comment ajouter l'id du joueur qui parle sur le message...
Voilà ma création :
CMD:o(playerid, params[])
{
new pID, pName[MAX_PLAYER_NAME];
new string[300], message[200];
GetPlayerName(playerid, pName, sizeof(pName));
if(!sscanf(params,"s", message))
{
format(string, sizeof(string), "(( [ %i ] | %s : %s ))",pID, pName,message);
SendClientMessageToAll(bleu, string);
}
else return SendClientMessage(playerid, gris, "USAGE: /o <Message>");
return 1;
}

Et je voudrais savoir aussi comment fais un chat RP...
J'ai fais quelque chose dans le OnPlayerText mais le message en couleur apparaît tout le temps. J'aimerais savoir comment le retirer... CODE : for(new i;i<MAX_PLAYERS;i++)
{
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid, x,y,z);
    new string[200], pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, sizeof(pName));
    format(string, sizeof(string), "%s : %s", pName, text);
    if(IsPlayerInRangeOfPoint(i, 10, x,y,z))
    {
        SendClientMessageToAll(gris,string);
    }
}

Merci d'avance et à la prochaine.[/i]

vincentdu90

  • Invité
Re : Problème commande et chat RP
« Réponse #1 le: 08 Avril 2013, 16:38:35 »
Bonjour,

    Pour ton premier problème il te suffit seulement d'utiliser playerid dans ton format.
Pour le second, ce n'est pas SendClientMessageToAll() que tu dois utiliser mais SendClientMessage() avec i comme premier paramètre. De plus tous ce qui précède ton format() peut-être mis en dehors de la boucle car tu as juste besoin de faire tous ça une fois, lorsque le joueur tape la commande  :happy:.

Voilou

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Problème commande et chat RP
« Réponse #2 le: 08 Avril 2013, 17:17:07 »
Merci pour le premier problème mais lorsque j'écris IG, ya un message gris et un message avec mon nom orange et mon texte ! Comment puis-je retirer le texte avec la couleur ? qui est d'ailleurs transmis à tout les joueurs...

vincentdu90

  • Invité
Re : Problème commande et chat RP
« Réponse #3 le: 09 Avril 2013, 11:26:25 »
Ton "chat RP" doit être mis dans OnPlayerCommandText pas dans le OnPlayerText car ton nom en orange doit sûrement être ton pseudo.
« Modifié: 09 Avril 2013, 11:37:00 par vincentdu90 »

Hors ligne steve76

  • *
  • Tueur en série
  • Messages: 153
    • Voir le profil
Re : Problème commande et chat RP
« Réponse #4 le: 09 Avril 2013, 17:11:50 »
Si j'ai bien compris ton soucis:

public OnPlayerText(playerid, text[])
{
ChatNormal(playerid, text); //Ton chat normal RP dans une fonction ou directement ici
return 0; //Retourne 0 pour ne pas afficher le texte par défaut, juste le tient.
}

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Problème commande et chat RP
« Réponse #5 le: 09 Avril 2013, 18:40:43 »
Pour un chat RP, utilise ce que dit cette personne: http://www.gtaonline.fr/forums/index.php?topic=13715.msg233652#msg233652
Ensuite, dans OnPlayerText() tu auras juste à utiliser:
Code: (pawn) [Sélectionner]
ProxDetector();

++ :)


Adju ♥
(-_-)



vincentdu90

  • Invité
Re : Problème commande et chat RP
« Réponse #6 le: 09 Avril 2013, 21:05:06 »
Le IsPlayerInRangeOfPoint() fait exactement la même chose que cette commande donc ça ne serait pas très utile.

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Problème commande et chat RP
« Réponse #7 le: 10 Avril 2013, 12:19:42 »
Merci de vos réponses; le return 0; est valide merci et pour le playerid aussi. Merci à vous.
Merci aussi à Infu mais je crois que je vais rester sur le IsPlayerInRangeOfPoint(); ;-)