SA-MP Forums Archive
Crash - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Crash (/showthread.php?tid=571572)



Crash - MrCallum - 19.04.2015

I made this code:
Код:
	if (strcmp(cmd, "/register", true) ==0 )
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(gPlayerLogged[playerid] == 1)
			{
				SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in.");
				return 1;
			}
			GetPlayerName(playerid, sendername, sizeof(sendername));
			format(string, sizeof(string), "users/%s.ini", sendername);
			new File: hFile = fopen(string, io_read);
			if (hFile)
			{
				SendClientMessage(playerid, COLOR_YELLOW, "That Username is already taken, please choose a different one.");
				fclose(hFile);
				return 1;
			}
	        new tmppass[64];
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /register [password]");
				return 1;
			}
			strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
			//Encrypt(tmppass);
			OnPlayerRegister(playerid,tmppass);
		}
		return 1;
	}
Every time I compile the pawno compiler crashes and does not compile it, when I take the code out, it is fine and can compile.


Re: Crash - Jefff - 19.04.2015

Look ok but try this
pawn Код:
if(strcmp(cmd, "/register", true) == 0)
{
    if(gPlayerLogged[playerid] == 1)
    {
        SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in.");
        return 1;
    }

    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "users/%s.ini", sendername);
    if(fexist(string))
    {
        SendClientMessage(playerid, COLOR_YELLOW, "That Username is already taken, please choose a different one.");
        return 1;
    }
    if(!cmdtext[idx - 1] || cmdtext[idx] == ' ')
    {
        SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /register [password]");
        return 1;
    }
    //Encrypt(tmppass);
    OnPlayerRegister(playerid,cmdtext[idx]);
    return 1;
}