31.01.2011, 11:58
(
Last edited by THE_KNOWN; 01/02/2011 at 07:59 AM.
)
my problem is when a player connects to my server and spawns, he spawns with the stats of another player in the server (the loc, the skin, the admin level etc.)
EDIT: i have about 12 fields in it. will it mess it up?
Code:
SavePlayer(playerid)//there is a timer which calls this func. { if(!PlayerLogged[playerid]) return 0; if(GetPlayerState(playerid) == PLAYER_STATE_WASTED) return 0; Money[playerid] = GetPlayerMoney(playerid); skin[playerid] = GetPlayerSkin(playerid); GetPlayerPos(playerid, X[playerid],Y[playerid],Z[playerid]); GetPlayerFacingAngle(playerid, Ang[playerid]); CheckMySQL(); new string[516]; format(string, sizeof(string), "UPDATE Users SET Money=%d, skin=%d, X=%f, Y=%f, Z=%f, Angle=%f, dlic=%d, pin=%d, cc=%d, admin=%d WHERE Name='%s'", Money[playerid], skin[playerid],X[playerid],Y[playerid],Z[playerid],Ang[playerid],dlic[playerid],pin[playerid], cc[playerid], admin[playerid], Name[playerid]); mysql_query(string); new Float:x,Float:y,Float:z,Float:r; GetVehiclePos(vid, x, y, z); GetVehicleZAngle(vid, r); format(string, sizeof(string), "UPDATE vehs SET Model=%d, X=%f, Y=%f, Z=%f, Rotation=%f WHERE Name='%s'", tmdl[playerid], x, y, z, r, Name[playerid]); mysql_query(string); return 1; } LoginPlayer(playerid, password[]) { GetPlayerName(playerid, Name, sizeof(Name)); if(!AccountExists[playerid])//the account is checked when player is connected return SendClientMessage(playerid, COLOR_RED, "You're not registered!"); if(PlayerLogged[playerid]) return SendClientMessage(playerid, COLOR_RED, "You're already logged in!"); if(strlen(password) < 3 || strlen(password) >= 32) return SendClientMessage(playerid, COLOR_RED, "Your password is too short or too long!"); CheckMySQL(); new string[128]; format(string, sizeof(string), "SELECT * FROM Users WHERE Name = '%s' AND Password = '%s'", Name, password); mysql_query(string); mysql_store_result(); if(!mysql_num_rows()) return SendClientMessage(playerid, COLOR_RED, "Incorrect password."); new row[128]; new field[13][32]; mysql_fetch_row_format(row, "|"); explode(row, field, "|"); mysql_free_result(); format(password, 32, "%s", field[2]); Money[playerid] = strval(field[3]); skin[playerid] = strval(field[4]); X[playerid] = strval(field[5]); Y[playerid] = strval(field[6]); Z[playerid] = strval(field[7]); Ang[playerid] = strval(field[8]); dlic[playerid] = strval(field[9]); pin[playerid] = strval(field[10]); cc[playerid] = strval(field[11]); admin[playerid] = strval(field[12]); GivePlayerMoney(playerid, Money[playerid]); format(string, sizeof(string), "{A9C4E4}Thank you, you have logged in and your stats have been restored.", Name); SendClientMessage(playerid, 0x6666FFFF, string); PlayerLogged[playerid] = 1; LoadVeh(playerid); return 1; }