if (strcmp("/login", cmd, true) == 0) { if(RestartTimer != DONT_RESTART) { format(string, sizeof(string), "The Server will be restarting, untill then login has been disabled."); SendClientMessage(playerid, COLOR_LIGHTRED, string); return 1; } if(gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in."); return 1; } if(strcount(cmdtext, ' ') != 2) { SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /login [password]"); return 1; } if(PlayerInfo[playerid][pSQLId] == INVALID_SQL_ID) { SendClientMessage(playerid, COLOR_YELLOW, "You dont have an account. Please register by using /register [password]"); return 1; } new inputhash[50]; new checkhash[33]; new cmdstring[64]; new rawcheckhash[99]; inputhash = MD5_Hash(strtok(cmdtext, idx)); strmid(checkhash,PlayerInfo[playerid][pPassword],0,strlen(PlayerInfo[playerid][pPassword]),sizeof(checkhash)); strmid(rawcheckhash,PlayerInfo[playerid][pPassword],0,strlen(PlayerInfo[playerid][pPassword]),sizeof(checkhash)); //printf("RAW CHECK HASH: %s",rawcheckhash); //printf("CHECK HASH: %s",checkhash); //printf("INPUT HASH: %s",inputhash); if (strfind(checkhash, inputhash, true) != -1) { gPlayerLogged[playerid] = 1; //printf("%s has entered his password",PlayerInfo[playerid][pName]); SendClientMessage(playerid, COLOR_WHITE,"Please hold while we log you in..."); format (cmdstring, sizeof(cmdstring), "/xlogin %s", checkhash); CallRemoteFunction("OnPlayerCommandText", "is", playerid, cmdstring); // new timer for login -> spawn SetTimerEx("SpawnPlayerEx",5000,0,"i",playerid); } else { SendClientMessage(playerid, COLOR_RED, "ERROR: Password does not match your name."); } return 1; }
format (cmdstring, sizeof(cmdstring), "/xlogin %s", checkhash); CallRemoteFunction("OnPlayerCommandText", "is", playerid, cmdstring);
if (strcmp(cmd, "/login", true) ==0 ) { if(IsPlayerConnected(playerid)) { new tmppass[64]; if(gPlayerLogged[playerid] == 1) { SendClientMessage(playerid, COLOR_WHITE, "SERVER: You are already logged in."); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /login [password]"); return 1; } strmid(tmppass, tmp, 0, strlen(cmdtext), 255); Encrypt(tmppass); OnPlayerLogin(playerid,tmppass); } return 1; } 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), "%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; }
Originally Posted by tomnidi
Dude its not an error or somethin like that, It just I need a help to make an auto /xregister [same Pass] when I type only /register [pass]
Please help! ![]() ![]() |