Moze objasnjenje?

Započeo Mr. Kid, Novembar 15, 2009, 01:45:11 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Pozz!

Moze li mi netko objasniti strtok(cmdtext, idx);?
Sto to znaci?


Ogromno preporucam koristenje: sscanf + zcmd/ycmd/dcmd

Pa ja i jesam koristio sscanf i htio sam napraviti /register i /login komande. I uspio sam napraviti /register komandu ali ne mogu napraviti /login, jer mi se javlja neki error.

Evo ovo je moja /login komanda:

dcmd_login(playerid, params[])
{
   new password;
   new tmp[256];
   new file[128];
   new name[MAX_PLAYER_NAME];
   if(sscanf(params, "si", password)) return SendClientMessage(playerid, 0xFFFFFFFF, "KORISTENJE: /login <sifra>");
   format(file, sizeof(file), "%s.ini", name);
   GetPlayerName(playerid, name, sizeof(name));
   if(!fexist(file))
   {
       tmp = dini_Get(file, "Sifra");
       if(udb_hash(password) != strval(tmp))
       {
           SendClientMessage(playerid, 0xFFFFFFFF, "[System]: Account Logged into!");
}
else
{
   SendClientMessage(playerid, 0xFFFFFFFF, "[System]: Login failed!");
}
}
return 1;
}


A ovaj mi se error javlja:

C:\Documents and Settings\Administrator\Desktop\Bruce\gamemodes\rs.pwn(136) : error 035: argument type mismatch (argument 1)


A ovo je 136 linija gdje je error:

if(udb_hash(password) != strval(tmp))
Poslednja Izmena: Novembar 15, 2009, 13:32:45 POSLE PODNE od Mr. Kid

dcmd_login(playerid, params[])
{
    new password[128];
    new tmp[256];
    new file[128];
    new name[MAX_PLAYER_NAME];
    if(sscanf(params, "s", password)) return SendClientMessage(playerid, 0xFFFFFFFF, "KORISTENJE: /login <sifra>");
    format(file, sizeof(file), "%s.ini", name);
    GetPlayerName(playerid, name, sizeof(name));
    if(!fexist(file))
    {
        tmp = dini_Get(file, "Sifra");
        if(udb_hash(password) != strval(tmp))
        {
            SendClientMessage(playerid, 0xFFFFFFFF, "[System]: Account Logged into!");
      }
      else
      {
          SendClientMessage(playerid, 0xFFFFFFFF, "[System]: Login failed!");
      }
   }
   return 1;
}

eto ti ispravljene verzije, znaci sljedece je bilo krivo:

"password" nije bio array,a treba biti za string. i jos jedna greska je bila sta si stavio u sscanf u drugi parametar "si" dok treba samo "s" za string,a "i" znaci da trebas broj,a ne trebas