Non ça ne change hélas rien. Pour tenter de réparer le pb, j ai créer 4 cmd de tests. Voici les résultats obtenus pour chacune d'elle.
if (strcmp("/a1", cmdtext, true) == 0)
{
SetPlayerArmourHack(playerid,100);
format(string1, sizeof(string1),"armourhack[playerid]=%f",armourhack[playerid]);
SendClientMessage(playerid,COLOR_INFO, string1);
return 1;
}
Résultat: la variable armourhack passe à 100 comme il faut et le gilet apparait
PS: Dès la première commande, je ne reçois plus aucun message pour me signaler que je cheat
if (strcmp("/a2", cmdtext, true) == 0)
{
format(string1, sizeof(string1),"armourhack[playerid]=%f",armourhack[playerid]);
SendClientMessage(playerid,COLOR_INFO, string1);
return 1;
}
Résultat: Après m'être tué, je n'ai donc plus de gilet, je tape cette commande. Surprise, la variable est resté à 100
if (strcmp("/a3", cmdtext, true) == 0)
{
SetPlayerArmourHack(playerid,armourhack[playerid]);
format(string1, sizeof(string1),"armourhack[playerid]=%f",armourhack[playerid]);
SendClientMessage(playerid,COLOR_INFO, string1);
return 1;
}
Résultat: Je fais exprès de perdre un peu d'armure en m explosant et je tape cette commande, surprise, ma variable est toujours à 100 et un gilet apparait
if (strcmp("/a4", cmdtext, true) == 0)
{
SetPlayerArmour(playerid,100);
format(string1, sizeof(string1),"armourhack[playerid]=%f",armourhack[playerid]);
SendClientMessage(playerid,COLOR_INFO, string1);
return 1;
}
Résultat: Ma variable ets toujours à 100, un gilet apparait mais je ne suis pas prévenu que je suis en train de cheater.
Ma conclusion:
- La variable n'est pas remise à jour correctement dans la fonction SetPlayerArmourHack
Je remet le code au cas où sur le pastebin:
http://pastebin.com/v94YhrdSAidez moi svp :)
A+ ;)