22.09.2016, 17:05
(
Последний раз редактировалось Dayrion; 22.09.2016 в 17:39.
)
Quote:
Debug it to see what value the variable holds and what gettime returns. If the values are pretty much close, you will most likely need to check ErrorMsg for any mistake that messes the arguments. If not, just make sure TPS_PM is really 30 because I can't think of any other reason.
|
PHP код:
new temp = PmTime[playerid] - gettime();
SCMF(playerid, -1, "temp = %i", temp);
if(PmTime[playerid] && PmTime[playerid] > gettime())
ErrorMsg(playerid, "Vous devez attendre encore %i sec avant d'envoyer un PM.", _, temp);
ErrorMsg(playerid, "Vous devez attendre encore %i sec avant d'envoyer un PM.", temp); // also i tried this one, same thing
new str[120];
format(str, sizeof(str), "- Vous devez attendre encore %i sec avant d'envoyer un PM.", temp);
SendClientMessageToAll(-1, str);
Код:
[18:58:12] temp = -1474563492 // this is ok [18:58:12] - Vous devez attendre encore -1474563492 sec avant d'envoyer un PM. // same thing, it's k [18:58:12] temp = 30 // alright, we have the right value [18:58:12] [Erreur] Vous devez attendre encore 1920091483 sec avant d'envoyer un PM. // wtf? [18:58:12] - Vous devez attendre encore 30 sec avant d'envoyer un PM.' // the right value there
PHP код:
ErrorMsg(playerid, const msg[] = EOS, allowed = true, va_args<>)
{
new message[190];
va_format(message, sizeof(message), msg, va_start<3>);
if(!allowed)
return SCMF(playerid, REDF, "[Erreur] Vous n'кtes pas autorisй а utiliser cette commande.");
return SCMF(playerid, REDF, "[Erreur] %s", msg);
}
Solved; As you Konst' said the problem came from my function. '-'
PHP код:
stock ErrorMsg(playerid, allowed = true, const msg[] = EOS, va_args<>)
{
new message[190];
static const premsg[] = "[Erreur] %s";
if(!allowed)
return SCMF(playerid, REDF, "[Erreur] Vous n'кtes pas autorisй а utiliser cette commande.");
if(numargs() == 2)
return SCMF(playerid, REDF, premsg, msg);
va_format(message, sizeof(message), msg, va_start<3>);
return SCMF(playerid, REDF, "[Erreur] %s", message);
}