CMD:register(playerid, params[])
{
if(!params[0]) return SendClientMessage(playerid, COLOR_ORANGE, "USAGE: /register [password]");
new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof name);
new file[128];
format(file, sizeof(file), "/Users/%s.ini", name);
new INI:handler = INI_Open(file);
INI_SetTag(file,"data");
INI_WriteInt(file,"Password",udb_hash(params));
INI_WriteInt(file,"Cash",0);
INI_WriteInt(file,"Admin",0);
INI_WriteInt(file,"Kills",0);
INI_WriteInt(file,"Deaths",0);
INI_WriteInt(file,"NoPm",0);
INI_WriteInt(file,"Mute",0);
INI_WriteInt(file,"Vip",0);
INI_WriteInt(file,"C4",0);
INI_WriteInt(file,"Banned",0);
INI_WriteInt(file,"Cookies",0);
INI_WriteInt(file,"Warn",0);
INI_WriteInt(file, "RegisterDate_day", Day);
INI_WriteInt(file, "RegisterDate_mon", Month);
INI_WriteInt(file, "RegisterDate_year",Year);
INI_WriteInt(file, "RegisterDate_hour",Hour);
INI_WriteInt(file, "RegisterDate_min", Minute);
INI_WriteInt(file, "RegisterDate_sec", Second);
INI_WriteInt(file, "Min", 0);
INI_WriteInt(file, "Hour", 0);
INI_WriteInt(file, "Sec", 0);
INI_WriteInt(file, "Jailed", 0);
INI_WriteInt(file, "Logged", 0);
INI_WriteInt(file, "AdminActions", 0);
INI_WriteInt(file, "Rank", 0);
INI_Close(handler);
new string[128]; format(string, sizeof(string), "You have successfully registered your account with the password \'%s\'. You have been automatically logged in.", params);
return SendClientMessage(playerid, red, string);
}
INI_SetTag(file,"data");
INI_WriteInt(file, "Rank", 0);
GetPlayerName(playerid,name,sizeof name);
GetPlayerName(playerid,name,sizeof(name));
CMD:register(playerid, params[])
{
if(!params[0]) return SendClientMessage(playerid, COLOR_ORANGE, "USAGE: /register [password]");
new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name));
new file[128];
format(file, sizeof(file), "/Users/%s.ini", name);
new INI:handler = INI_Open(file);
INI_SetTag(handler,"data");
INI_WriteInt(handler,"Password",udb_hash(params));
INI_WriteInt(handler,"Cash",0);
INI_WriteInt(handler,"Admin",0);
INI_WriteInt(handler,"Kills",0);
INI_WriteInt(handler,"Deaths",0);
INI_WriteInt(handler,"NoPm",0);
INI_WriteInt(handler,"Mute",0);
INI_WriteInt(handler,"Vip",0);
INI_WriteInt(handler,"C4",0);
INI_WriteInt(handler,"Banned",0);
INI_WriteInt(handler,"Cookies",0);
INI_WriteInt(handler,"Warn",0);
INI_WriteInt(handler, "RegisterDate_day", Day);
INI_WriteInt(handler, "RegisterDate_mon", Month);
INI_WriteInt(handler, "RegisterDate_year",Year);
INI_WriteInt(handler, "RegisterDate_hour",Hour);
INI_WriteInt(handler, "RegisterDate_min", Minute);
INI_WriteInt(handler, "RegisterDate_sec", Second);
INI_WriteInt(handler, "Min", 0);
INI_WriteInt(handler, "Hour", 0);
INI_WriteInt(handler, "Sec", 0);
INI_WriteInt(handler, "Jailed", 0);
INI_WriteInt(handler, "Logged", 0);
INI_WriteInt(handler, "AdminActions", 0);
INI_WriteInt(handler, "Rank", 0);
INI_Close(handler);
new string[128]; format(string, sizeof(string), "You have successfully registered your account with the password \'%s\'. You have been automatically logged in.", params);
return SendClientMessage(playerid, red, string);
}
|
INI_SetTag(handler,...); - Instead of using 'file' in INI functions, use handler and try.
|
CMD:register(playerid, params[])
{
if(!params[0]) return SendClientMessage(playerid, COLOR_ORANGE, "USAGE: /register [password]");
new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name));
new file[128];
format(file, sizeof(file), "/Users/%s.ini", name);
new INI:handler = INI_Open(file);
INI_SetTag(handler,"data");
INI_WriteInt(handler,"Password",udb_hash(params));
INI_WriteInt(handler,"Cash",0);
INI_WriteInt(handler,"Admin",0);
INI_WriteInt(handler,"Kills",0);
INI_WriteInt(handler,"Deaths",0);
INI_WriteInt(handler,"NoPm",0);
INI_WriteInt(handler,"Mute",0);
INI_WriteInt(handler,"Vip",0);
INI_WriteInt(handler,"C4",0);
INI_WriteInt(handler,"Banned",0);
INI_WriteInt(handler,"Cookies",0);
INI_WriteInt(handler,"Warn",0);
INI_WriteInt(handler, "RegisterDate_day", Day);
INI_WriteInt(handler, "RegisterDate_mon", Month);
INI_WriteInt(handler, "RegisterDate_year",Year);
INI_WriteInt(handler, "RegisterDate_hour",Hour);
INI_WriteInt(handler, "RegisterDate_min", Minute);
INI_WriteInt(handler, "RegisterDate_sec", Second);
INI_WriteInt(handler, "Min", 0);
INI_WriteInt(handler, "Hour", 0);
INI_WriteInt(handler, "Sec", 0);
INI_WriteInt(handler, "Jailed", 0);
INI_WriteInt(handler, "Logged", 0);
INI_WriteInt(handler, "AdminActions", 0);
INI_WriteInt(handler, "Rank", 0);
INI_Close(handler);
new string[128]; format(string, sizeof(string), "You have successfully registered your account with the password \'%s\'. You have been automatically logged in.", params);
return SendClientMessage(playerid, red, string);
}
CMD:login(playerid, params[])
(
if(udb_hash(params) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
SetPlayerCash(playerid, PlayerInfo[playerid][pCash]);
SetPlayerScore(playerid, PlayerInfo[playerid][pKills]);
SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pRank]);
PlayerInfo[playerid][pLogged] = 1;
}
else
{
SCM(playerid,0x0080C0FF,"Wrong login.");
}
return 1;
)
if(udb_hash(params) == PlayerInfo[playerid][pPass])
if(udb_hash(params[0]) == PlayerInfo[playerid][pPass])
|
This would fix, I guess:
pawn Код:
|
CMD:login(playerid, params[])
{
new
Pass[64]
;
if(sscanf(params), "s", Pass[64])) return SendClientMessage(playerid, -1, "Usage: /login [Password]");
if(strlen(Pass) > 64) return SendClientMessage(playerid, -1, "Pass can't exceed 64 chars...");
if(!strcmp(udb_hash(Pass)), PlayerInfo[playerid][pPassword]) // Replace with your var.
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
SetPlayerCash(playerid, PlayerInfo[playerid][pCash]);
SetPlayerScore(playerid, PlayerInfo[playerid][pKills]);
SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pRank]);
PlayerInfo[playerid][pLogged] = 1;
}
else
{
SendClientMessage(playerid, -1, "Wrong pass..."), Kick(playerid);
}
return 1;
}
|
Still using udb... ? However lol,
Nope lol, you can't compare two strings like that. You should know that. I really don't use udb but try it. |
CMD:login(playerid, params[])
{
new hashpass[129];
WP_Hash(hashpass,sizeof(hashpass),params);
if(!strcmp(hashpass,PlayerInfo[playerid][pPass]))
(
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
SetPlayerCash(playerid, PlayerInfo[playerid][pCash]);
SetPlayerScore(playerid, PlayerInfo[playerid][pKills]);
SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pRank]);
PlayerInfo[playerid][pLogged] = 1;
}
else
{
SCM(playerid,0x0080C0FF,"Wrong login.");
}
return 1;
)
: error 001: expected token: ")", but found ";"
: error 010: invalid function or declaration(
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
else
return 1;