[HELP] Login / Register issue with DCMD
#1

Код:
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(222) : warning 204: symbol is assigned a value that is never used: "tmp2"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(222) : warning 204: symbol is assigned a value that is never used: "file"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(221) : warning 204: symbol is assigned a value that is never used: "name"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(230) : error 017: undefined symbol "name"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(230) : error 017: undefined symbol "name"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(230) : error 029: invalid expression, assumed zero
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(230) : fatal error 107: too many error messages on one line
Line 219 to Line 313
Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
new name[MAX_PLAYER_NAME];
new cmd[256], idx, file[128], tmp[256], tmp2[256];
cmd = strtok(cmdtext, idx);
tmp = strtok(cmdtext, idx);
dcmd(register,8,cmdtext);
return 0;
}
dcmd_register(playerid,params[])
{
	GetPlayerName(playerid, name, sizeof(name));
	if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /register [password]");
	format(file,sizeof(file),"%s.ini",name);
	if(!fexist(file))
			{
			  dini_Create(file);
			  dini_IntSet(file, "Password", udb_hash(tmp));
			  dini_IntSet(file,"AdminLevel", 0);
			  dini_IntSet(file,"Cash", 0);
			  dini_IntSet(file,"Skin", 179);
			  dini_IntSet(file,"Money", 5000);
			  dini_IntSet(file,"Rank", 0);
			  dini_IntSet(file,"Member", 0);
        dini_IntSet(file,"Sex", 0);
        dini_IntSet(file,"Age", 0);
        dini_IntSet(file,"LottoNumber", 0);
        dini_IntSet(file,"Jailed", 0);
        dini_IntSet(file,"JailTime", 0);
        dini_IntSet(file,"Health", 0);
        dini_IntSet(file,"Team", 0);
        dini_IntSet(file,"PhoneNumber", 0);
        dini_IntSet(file,"License", 0);
        dini_IntSet(file,"Passport", 0);
			  SendClientMessage(playerid, COLOR_COP, "[LOGIN] Account Created! You may now /login");
			  PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
			  GetPlayerName(playerid, name, sizeof(name));
			  printf("%s has registered a account!", name);

			}
	else
			{
			  SendClientMessage(playerid, COLOR_COP, "[LOGIN] Account already created, /login");
    			PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
			}
}
{
dcmd(login,5,cmdtext);
return 0;
}
dcmd_login(playerid,params[])
{
  new PlayerName[24];
  new cmd[256], idx, file[128], tmp[256], tmp2[256];
	cmd = strtok(cmdtext, idx);
  tmp = strtok(cmdtext, idx);
  if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /login [password]");
	new name[MAX_PLAYER_NAME];
	if(IsLogged[playerid] == 1)
	{
		SendClientMessage(playerid, COLOR_COP, "[LOGIN] You already are logged in!");
		return 1;
	}
	else
	{
		GetPlayerName(playerid, name, sizeof(name));
		format(file,sizeof(file),"%s.ini",name);
		if(fexist(file))
		{
	  	tmp2 = dini_Get(file, "Password");
		 	if(udb_hash(tmp) != strval(tmp2))
			{
			  SendClientMessage(playerid, COLOR_COP, "[LOGIN] Login failed, incorrect password!");
 			  GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
 			  printf("%s has failed to login", name);
			}
			else
			{
			 	IsLogged[playerid] = 1;
			 	SetPlayerMoney(playerid, dini_Int(file, "Cash"));
				SetPlayerSkin(playerid, dini_Int(file, "Skin"));
				PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");
				PlayerInfo[playerid][Cash] = dini_Int(file, "Cash");
				PlayerInfo[playerid][Skin] = dini_Int(file, "Skin");
				PlayerInfo[playerid][Rank] = dini_Int(file, "Rank");
				PlayerInfo[playerid][Member] = dini_Int(file, "Member");
				PlayerInfo[playerid][Sex] = dini_Int(file, "Sex");
				PlayerInfo[playerid][Age] = dini_Int(file, "Age");
				PlayerInfo[playerid][LottoNumber] = dini_Int(file, "LottoNumber");
				PlayerInfo[playerid][Health] = dini_Int(file, "Health");
				SendClientMessage(playerid, COLOR_COP, "[LOGIN] Welcome back!");
			}
		}
	return 0;
}
Reply
#2

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
new cmd[256], idx, tmp[256];
cmd = strtok(cmdtext, idx);
tmp = strtok(cmdtext, idx);
dcmd(register,8,cmdtext);
return 0;
}
dcmd_register(playerid,params[])
{
    new name[MAX_PLAYER_NAME]
    GetPlayerName(playerid, name, sizeof(name));
    if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /register [password]");
    format(file,sizeof(file),"%s.ini",name);
    if(!fexist(file))
            {
              dini_Create(file);
              dini_IntSet(file, "Password", udb_hash(tmp));
              dini_IntSet(file,"AdminLevel", 0);
              dini_IntSet(file,"Cash", 0);
              dini_IntSet(file,"Skin", 179);
              dini_IntSet(file,"Money", 5000);
              dini_IntSet(file,"Rank", 0);
              dini_IntSet(file,"Member", 0);
        dini_IntSet(file,"Sex", 0);
        dini_IntSet(file,"Age", 0);
        dini_IntSet(file,"LottoNumber", 0);
        dini_IntSet(file,"Jailed", 0);
        dini_IntSet(file,"JailTime", 0);
        dini_IntSet(file,"Health", 0);
        dini_IntSet(file,"Team", 0);
        dini_IntSet(file,"PhoneNumber", 0);
        dini_IntSet(file,"License", 0);
        dini_IntSet(file,"Passport", 0);
              SendClientMessage(playerid, COLOR_COP, "[LOGIN] Account Created! You may now /login");
              PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
              GetPlayerName(playerid, name, sizeof(name));
              printf("%s has registered a account!", name);

            }
    else
            {
              SendClientMessage(playerid, COLOR_COP, "[LOGIN] Account already created, /login");
                PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
            }
}
{
dcmd(login,5,cmdtext);
return 0;
}
dcmd_login(playerid,params[])
{
  new PlayerName[24];
  new cmd[256], idx, file[128], tmp[256], tmp2[256];
    cmd = strtok(cmdtext, idx);
  tmp = strtok(cmdtext, idx);
  if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /login [password]");
    new name[MAX_PLAYER_NAME];
    if(IsLogged[playerid] == 1)
    {
        SendClientMessage(playerid, COLOR_COP, "[LOGIN] You already are logged in!");
        return 1;
    }
    else
    {
        GetPlayerName(playerid, name, sizeof(name));
        format(file,sizeof(file),"%s.ini",name);
        if(fexist(file))
        {
        tmp2 = dini_Get(file, "Password");
            if(udb_hash(tmp) != strval(tmp2))
            {
              SendClientMessage(playerid, COLOR_COP, "[LOGIN] Login failed, incorrect password!");
              GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
              printf("%s has failed to login", name);
            }
            else
            {
                IsLogged[playerid] = 1;
                SetPlayerMoney(playerid, dini_Int(file, "Cash"));
                SetPlayerSkin(playerid, dini_Int(file, "Skin"));
                PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");
                PlayerInfo[playerid][Cash] = dini_Int(file, "Cash");
                PlayerInfo[playerid][Skin] = dini_Int(file, "Skin");
                PlayerInfo[playerid][Rank] = dini_Int(file, "Rank");
                PlayerInfo[playerid][Member] = dini_Int(file, "Member");
                PlayerInfo[playerid][Sex] = dini_Int(file, "Sex");
                PlayerInfo[playerid][Age] = dini_Int(file, "Age");
                PlayerInfo[playerid][LottoNumber] = dini_Int(file, "LottoNumber");
                PlayerInfo[playerid][Health] = dini_Int(file, "Health");
                SendClientMessage(playerid, COLOR_COP, "[LOGIN] Welcome back!");
            }
        }
    return 0;
}
Reply
#3

That solved that issue, however now I am getting:

Код:
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(231) : warning 217: loose indentation
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(231) : error 017: undefined symbol "tmp"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(232) : error 017: undefined symbol "file"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(232) : error 017: undefined symbol "file"
C:\Program Files\Rockstar Games\GTA San Andreas\sFRP\sFrp.pwn(232) : error 029: invalid expression, assumed zero
Reply
#4

Replaced DCMD with strcmp instead, issue solved.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)