Par contre, il ne faut pas que la clef contienne de caractères accentués car ils ne sont pas gérés par mes fonctions (il faudrait les modifier pour qu'ils soient pris en compte).
Voici un script avec une clef qui fonctionne :
#include <a_samp>
new Cle[255+1]="jfierijIOjfrzpijJIPGJPRI02HFsodfhp4hofh8802novcbopuihbdfPOUHJBDSOGUIH24808HFHJE89FJE93JN5043Nsdfg56s5gs6g4wfb6qeg8wIhgpizrelnfpiGZRrets5654fgGDS6548sergRGRZH34sfh6sf2h4RSFHZRjfierijIOjfrzpijJIPGJPRI02HFsodfhp4hofh8802novcbopuihbdfPOUHJBDSOGUIH24808HFHJE8";
CrypterChaine (Chaine[])
{
new Index;
new IndexCar;
new IndexCle;
new Car;
while (Chaine[Index] >= ' ')
{
IndexCar=Chaine[Index]-' ';
IndexCle=Cle[Index%256]-' ';
Car = (IndexCar+IndexCle)%95;
Chaine[Index] = Car+' ';
Index++;
}
}
DecrypterChaine (Chaine[])
{
new Index;
new IndexCar;
new IndexCle;
new Car;
while (Chaine[Index] >=' ')
{
IndexCar=Chaine[Index]-' ';
IndexCle=Cle[Index%256]-' ';
Car = (IndexCar+95-IndexCle)%95;
Chaine[Index] = Car+' ';
Index++;
}
}
main ()
{
new Texte[128] = "sasuke28700";
printf ("Chaine originale : <%s>", Texte);
CrypterChaine (Texte);
printf ("Chaine cryptee : <%s>", Texte);
DecrypterChaine (Texte);
printf ("Chaine decryptee : <%s>", Texte);
}
public OnGameModeInit ()
{
return 1;
}
Et voici le résultat de ce mode :
[16:43:18] Chaine originale : <sasuke78200>
[16:43:18] Chaine cryptee : <^H][^O"aazv>
[16:43:18] Chaine decryptee : <sasuke78200>
++
Syg