[POMOC] udb_hash

Započeo Huan Escobar, Januar 29, 2017, 22:59:42 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 3 gostiju pregledaju ovu temu.

Skripta koju koristim: Ne znam koja je izvorna
Detaljan opis problema: Kako god obrisem udb_hash da bi se lepo prikazivao pw izbacuje mi error pa trazim pomoc... Eo dole sva mesta u skripti gde imam udb_hash... Sta god uradio nesto ne valja I prijavljuje error, pa ako bi neko bio ljubazan da pomogne. Hvala u napred
Dio skripte:
[pawn]
            else if(strlen(inputtext) >= MIN_DUZINA_LOZINKE && strlen(inputtext) <= MAX_DUZINA_LOZINKE)
            {
                                        new string[128];
               new INI:File = INI_Open(Korisnici(playerid));
               INI_SetTag(File,"data");
               INI_WriteInt(File,"Password",udb_hash(inputtext));
               INI_WriteInt(File,"Drzava",0);
               INI_WriteInt(File,"Level",1);
               PlayerInfo[playerid][pLevel] = 1;
                                        format(string, sizeof(string), "%s", inputtext);
                                        INI_Close(File);
               format(string, sizeof(string),""CRVENA"Password: "BIJELA"%s",inputtext);
               SCM(playerid,-1,string);
               ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, ""BIJELA"Izaberite spol", ""BIJELA"Musko\n"BIJELA"Zensko", "Dalje", "Odustani");
            }
////////////////////////////////////
/////////////////////////////////////
   case DIALOG_LOGIN:
       {
          if(!response) return Kick(playerid);
          if(response)
          {
              if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
             {
                INI_ParseFile(Korisnici(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
               if(PlayerInfo[playerid][pDrzava] == 0)
               {
                   SCM(playerid,-1,""CRVENA"[GRESKA] "BIJELA"Niste zavrsili registraciju, pa ste vraceni na ponovnu registraciju!");
                  ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, ""BIJELA"Izaberite spol", ""BIJELA"Musko\n"BIJELA"Zensko", "Dalje", "Odustani");
                    TogglePlayerControllable(playerid, 0);
                  InterpolateCameraPos(playerid, 1418.5322,-960.6523,132.5073, 1551.0820,-766.9652,132.5073, 30000);
                  InterpolateCameraLookAt(playerid, 1428.3470,-808.4883,132.5073, 1392.0089,-1002.6099,132.5073, 30000);
                   return 1;
               }
//////////////////////////////////////
/////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
stock udb_hash(buf[]) //HASH PASS
{
    new length=strlen(buf);
    new s1 = 1;
    new s2 = 0;
    new n;
    for (n=0; n<length; n++)
    {
       s1 = (s1 + buf[n]) % 65521;
       s2 = (s2 + s1)     % 65521;
    }
    return (s2 << 16) + s1;
}
///////////////
////////////////////
CMD:promenipassword(playerid, params[],help)
{
   if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""SIVA"(greska) Moras se ulogovati da bi koristio ovu komandu!");
   if(isnull(params)) return SCM(playerid, -1, ""SIVA1" Koristite: "SIVA"/promenipassword [Novi Pass(Min 6 - Max 26 znakova]");
   if(strlen(params) < 6) return SCM(playerid, -1, ""SIVA"(greska) Password je prekratak (Min 6 znakova)!");
   if(strlen(params) > 26) return SCM(playerid, -1, ""SIVA"(greska) Password je predug (Max 26 znakova)!");
   PlayerInfo[playerid][pPass] = udb_hash(params);
   new INI:File = INI_Open(Korisnici(playerid));
   INI_SetTag(File,"data");
   INI_WriteInt(File,"Password",udb_hash(params));
   INI_Close(File);
   SCM(playerid,-1,""CRVENA"|------------------------------------------------------------------------------------|");
   SCMF(playerid,-1,""CRVENA"- "BIJELA"Vas novi password je: "CRVENA"%s", params);
   SCM(playerid,-1,""CRVENA"- "BIJELA"Slikajte promenu passworda kako ga ne bi zaboravili");
   SCM(playerid,-1,""CRVENA"- "BIJELA"Origen RolePlay team ne odgovara za izgubljene passworde");
   SCM(playerid,-1,""CRVENA"|------------------------------------------------------------------------------------|");
   return 1;
}
[/pawn]
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Poslednja Izmena: Januar 29, 2017, 23:04:08 POSLE PODNE od Huan Escobar

Koi ti error izbacuje  :)
• G A M E M O D E •
• F I L T E R S C R I P T •
• T U T O R I A L •


Citat
You are what you believe yoursefl to be.

   Ovaj je za red koji je crven
   error 035: argument type mismatch (argument 3)   
   {
                    new string[128];
               new INI:File = INI_Open(Korisnici(playerid));
               INI_SetTag(File,"data");
               INI_WriteInt(File,"Password",inputtext);
               INI_WriteInt(File,"Drzava",0);
               INI_WriteInt(File,"Level",1);
               PlayerInfo[playerid][pLevel] = 1;
                                        format(string, sizeof(string), "%s", inputtext);
                                        INI_Close(File);
               format(string, sizeof(string),""CRVENA"Password: "BIJELA"%s",inputtext);
               SCM(playerid,-1,string);
               ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, ""BIJELA"Izaberite spol", ""BIJELA"Musko\n"BIJELA"Zensko", "Dalje", "Odustani");
            }

Sledeci ovde
error 033: array must be indexed (variable "inputtext")
case DIALOG_LOGIN:
       {
          if(!response) return Kick(playerid);
          if(response)
          {
              if(inputtext == PlayerInfo[playerid][pPass])
             {
                INI_ParseFile(Korisnici(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
               if(PlayerInfo[playerid][pDrzava] == 0)
               {

Ovde poslednja 2
error 006: must be assigned to an array

argument type mismatch (argument 3)
CMD:promenipassword(playerid, params[],help)
{
   if(UlogovanProvera[playerid] == 0) return SCM(playerid,-1,""SIVA"(greska) Moras se ulogovati da bi koristio ovu komandu!");
   if(isnull(params)) return SCM(playerid, -1, ""SIVA1" Koristite: "SIVA"/promenipassword [Novi Pass(Min 6 - Max 26 znakova]");
   if(strlen(params) < 6) return SCM(playerid, -1, ""SIVA"(greska) Password je prekratak (Min 6 znakova)!");
   if(strlen(params) > 26) return SCM(playerid, -1, ""SIVA"(greska) Password je predug (Max 26 znakova)!");
   PlayerInfo[playerid][pPass] = params;
   new INI:File = INI_Open(Korisnici(playerid));
   INI_SetTag(File,"data");
   INI_WriteInt(File,"Password",params);
   INI_Close(File);
   SCM(playerid,-1,""CRVENA"|------------------------------------------------------------------------------------|");
   SCMF(playerid,-1,""CRVENA"- "BIJELA"Vas novi password je: "CRVENA"%s", params);
   SCM(playerid,-1,""CRVENA"- "BIJELA"Slikajte promenu passworda kako ga ne bi zaboravili");
   SCM(playerid,-1,""CRVENA"- "BIJELA"Origen RolePlay team ne odgovara za izgubljene passworde");
   SCM(playerid,-1,""CRVENA"|------------------------------------------------------------------------------------|");
   return 1;
}
Poslednja Izmena: Januar 29, 2017, 23:21:49 POSLE PODNE od Huan Escobar


[pawn]  INI_WriteInt(File,"Password",params);[/pawn]
Stavi
[pawn]  INI_WriteInt(File,"Password",PlayerInfo[playerid][pPass]);[/pawn]
I izbrisi ovo  PlayerInfo[playerid][pPass] = params;

[pawn] if(inputtext == PlayerInfo[playerid][pPass])[/pawn]
Stavi
[pawn]if(PlayerInfo[playerid][pPass])[/pawn]

[pawn]INI_WriteInt(File,"Password",inputtext);[/pawn]
Stavi
[pawn]INI_WriteInt(File,"Password",PlayerInfo[playerid][pPass]);[/pawn]
• G A M E M O D E •
• F I L T E R S C R I P T •
• T U T O R I A L •


Citat
You are what you believe yoursefl to be.


Citat: няÏ...Ñ•Ñ,αиσνιÏ, poslato Januar 30, 2017, 18:56:11 POSLE PODNE
[pawn]  INI_WriteInt(File,"Password",params);[/pawn]
Stavi
[pawn]  INI_WriteInt(File,"Password",PlayerInfo[playerid][pPass]);[/pawn]
I izbrisi ovo  PlayerInfo[playerid][pPass] = params;

[pawn] if(inputtext == PlayerInfo[playerid][pPass])[/pawn]
Stavi
[pawn]if(PlayerInfo[playerid][pPass])[/pawn]

[pawn]INI_WriteInt(File,"Password",inputtext);[/pawn]
Stavi
[pawn]INI_WriteInt(File,"Password",PlayerInfo[playerid][pPass]);[/pawn]
Ti sto objasnjavas je totalno pogresno jer password nije integer vec string i treba se ovako uraditi

pPass[64]//ovo u enumu za PlayerInfo

strmid(PlayerInfo[playerid][pPass], inputtext, 0, strlen(inputtext), 64);//ovo ti je za dialog na registeru kada unosis sifru
INI_WriteString(File,"Password", PlayerInfo[playerid][pPass]);//cuvanje
INI_String("Password", PlayerInfo[playerid][pPass],64);//ucitavanje

Kod UP moda je INI_WriteInt i to vecina koriste
• G A M E M O D E •
• F I L T E R S C R I P T •
• T U T O R I A L •


Citat
You are what you believe yoursefl to be.

Citat: няÏ...Ñ•Ñ,αиσνιÏ, poslato Januar 31, 2017, 13:38:09 POSLE PODNE
Kod UP moda je INI_WriteInt i to vecina koriste
Ne znam da li si znao da je integer cijeli broj i ne moze biti neka rijec sto znaci da po tvom primjeru igrac samo moze kucati sifru u brojevima a sta ako upise npr test123?? Password je string i tu nema razmisljanja dalje!
Sto se tice UP moda jer si rekao da je tako u UP modu a jesi li mozda pogledao zasto je integer?? Pa integer je jer se hashuje i ako ukucas pw test123 on ce ispisati 146364 a ovaj momak trazi da ukine hash sto znaci hoce originalnu sifru da zapisuje tako da kao sto sam prije rekao password je string !!!

Da upravu si koLega :D
• G A M E M O D E •
• F I L T E R S C R I P T •
• T U T O R I A L •


Citat
You are what you believe yoursefl to be.

Resio sam nekako sam, hvala u svakom slucaju svima!