• 09 Juillet 2025, 01:00:39


Auteur Sujet: Fonction  (Lu 1516 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Fonction
« le: 24 Août 2012, 03:09:38 »
Bonjour, j'ai recemment tenté de crée une fonction qui combinerai le format avec le sendclientmessage, mais deux erreurs se presente, et je ne comprend rien :

Ici l'erreur "error 035: argument type mismatch (argument 5)"
Code: (PAWN) [Sélectionner]
SendFormatedClientMessage(playerid, PMCOLOR, "PM a [%d]%s : %s", id, cibledplayername, cmdtext[8]);
Ma fonction :

Ici l'erreur "error 029: invalid expression, assumed zero" survient sur la ligne du "format", et je ne comprend pas  :(
Code: (PAWN) [Sélectionner]
SendFormatedClientMessage(playerid, color, text[], variable1, variable2, variable3)
{
new message[128];
format(message, sizeof(message), text[], variable1, variable2, variable3);
SendClientMessage(playerid, color, message);
}

[/url]

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Fonction
« Réponse #1 le: 24 Août 2012, 06:32:57 »
format(message, sizeof(message), text, variable1, variable2, variable3);
Tu ne dois pas mettre les crochets !

SendFormatedClientMessage(playerid, color, text[], variable1, cibledplayername, variable3)
{
new message[128];
format(message, sizeof(message), text, variable1, cibledplayername, variable3);
SendClientMessage(playerid, color, message);
        return 1;
}
« Modifié: 24 Août 2012, 06:36:12 par Kevin_Carter »

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Fonction
« Réponse #2 le: 24 Août 2012, 14:49:45 »
D'accord, mais l'erreur 35 survient toujours quand je l'utilise :

C:\Users\Killian\Desktop\Serveur SA-MP\filterscripts\PrivMsg.pwn(43) : error 035: argument type mismatch (argument 5)

Code: (PAWN) [Sélectionner]
SendFormatedClientMessage(playerid, PMCOLOR, "PM a [%d]%s : %s", id, cibledplayername, cmdtext[8]);

[/url]

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Fonction
« Réponse #3 le: 24 Août 2012, 17:57:17 »
SendFormatedClientMessage(playerid, PMCOLOR, "PM a [%d]%s : %s", id, cibledplayername, cmdtext);
Essai ça

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Fonction
« Réponse #4 le: 24 Août 2012, 18:17:43 »
Le probleme reste le meme

[/url]

Hors ligne Kevin_Carter

  • *
  • Tueur en série
  • Messages: 121
    • Voir le profil
Re : Fonction
« Réponse #5 le: 24 Août 2012, 18:47:39 »
Alors là ... Je ne vois pas trop dans ce cas ... :angelnot

Hors ligne Diablo62

  • *
  • Bandit
  • Script seulement pour m'amuser :)
  • Messages: 305
    • Voir le profil
Re : Fonction
« Réponse #6 le: 25 Août 2012, 14:56:30 »
Salut.

Personnellement j'ai déjà essayé de faire en sorte que le format soit intégré directement dans un SendClientMessage que j'aurais modifié, mais je n'ai jamais réussi. A chaque fois j'avais toujours une erreur du même type que ce que tu viens de donner :S
Merci à Colonel Marco pour la Signature

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Fonction
« Réponse #7 le: 26 Août 2012, 01:05:28 »
Salut,

désolé mais c'est pratiquement impossible à faire de cette façon (Mr Fredo l'a fait il y a environ 2 ans je crois)

Utilisez les commandes préprocesseurs...

#define SendFormatMsg(%0, %1, %2, %3) \
{
    new st_string[128];
    format(st_string, sizeof(st_string, %2, %3);
    SendClientMessage(%0, %1, st_string);
}

Le code peut contenir des erreurs mais normalement l'idée y est

Bonne chance

ps. tu colle ce code en haut de ton script, et tu utilise ainsi par la suite:

SendFormatMsg(playerid, color, string[], params...);
++Sim++