GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Winklevows le 03 Janvier 2011, 16:43:58

Titre: Aide pour optimisation de code
Posté par: Winklevows le 03 Janvier 2011, 16:43:58
Bonjour,

Je souhaiterais optimiser mon code, pour cela je souhaiterais supprimer tout les warnings, actuellement il m'en reste 2 :
5.pwn(46) : warning 201: redefinition of constant/macro (symbol "MAX_PICKUPS")
5.pwn(6739) : warning 235: public function lacks forward declaration (symbol "OnPlayerPrivmsg")

Ligne 46:
// Max Number of pickups (for destroying cash drops)
#define MAX_PICKUPS 150

Ligne 6739:

public OnPlayerPrivmsg(playerid, recieverid, text[])
{
    if(Muted[playerid] == 1) {
    SendClientMessage(playerid, COLOR_ERROR, "Vous n'avez pas le droit de parler, vous ne pouvez pas utiliser cette commande");
    return 0;
    }
if(pmsoff[recieverid] == 1) {
SendClientMessage(playerid, COLOR_YELLOW, "Ce joueur n'accepte pas les messages privé pour le moment.");
    return 0;
    }
SendClientMessage(recieverid, COLOR_GREY, "Tapez /pmoff pour refuser les messages privés");
SpamStrings[playerid] ++;
new pmsg[128];
new priname[32],prinamee[32];
GetPlayerName(playerid,priname, sizeof(priname));
GetPlayerName(recieverid,prinamee, sizeof(prinamee));
format(pmsg, sizeof(pmsg), "2**(PM)** From \2;%s(%i)\2; To \2;%s(%i)\2; - %s",priname,playerid,prinamee,recieverid,text); // [0] <jacob> hi
ircSay(EchoConnection, EchoChan,pmsg);

return 1;
}

Chose étrange, il y a une commande pour accepter ou refuser les PMs mais pas pour en envoyé.

Mon gamemode date, je pense qu'il s'agit de fonction qui ont été supprimé de SAMP depuis.

De plus, je souhaiterais modifier mes commandes.

De base, tout était sous la forme:
if
{
...
}
if
{
...
}
if
{
...
}
Je ne sais pas si j'ai raison mais moi j'aurais plus fait:
if
{
...
}
else if
{
...
}
else if
{
...
}
Es-ce mieux ? Ou pareil ?

Merci
Titre: Re : Aide pour optimisation de code
Posté par: Winklevows le 03 Janvier 2011, 16:56:56
Merci je n'ai plus le warning :)

Maintenant j'ai 3 erreurs lol
5.pwn(46) : error 038: extra characters on line
5.pwn(46) : error 010: invalid function or declaration
5.pwn(3428) : error 017: undefined symbol "MAX_PICKUPS"
Titre: Re : Aide pour optimisation de code
Posté par: Winklevows le 03 Janvier 2011, 17:05:29
Merci, j'ai plus d'erreurs :)

J'ai réussi à réglé le 2eme warning en ajoutant :

forward OnPlayerPrivmsg(playerid, recieverid, text[]);