12.08.2009, 02:46
Ok well for some reason when i login it doesn't set my ingame information.
Everything works except for when i login in, It does't set the players money or any info. Its all set to 0. And when i check the account folder the only info stored is the pass and the ip.
Does anyone know how to fix this?
Код:
public OnPlayerConnect(playerid) { PlayerInfo[playerid][pLevel] = 1; PlayerInfo[playerid][pBanned] = 0; PlayerInfo[playerid][pAdmin] = 0; PlayerInfo[playerid][pIsjailed] = 0; PlayerInfo[playerid][pJailed] = 0; PlayerInfo[playerid][pCash] = 5000; PlayerInfo[playerid][pBank] = 0; PlayerInfo[playerid][pKills] = 0; PlayerInfo[playerid][pDeaths] = 0; PlayerInfo[playerid][pHours] = 0; PlayerInfo[playerid][pMins] = 0; PlayerInfo[playerid][pSex] = 0; PlayerInfo[playerid][pAge] = 25; PlayerInfo[playerid][pJob] = 0; PlayerInfo[playerid][pMember] = 0; PlayerInfo[playerid][pRank] = 0; PlayerInfo[playerid][pSkin] = 7; if(PLAYERLIST_authed[playerid] == 0) { if(udb_Exists(GetName(playerid))) { SendClientMessage(playerid,COLOR_LREGISTER,".:: Account registered. You can now login by typing /login [password]"); } else { SendClientMessage(playerid,COLOR_LREGISTER,".:: Account unregistered. Please register by using /register [password]"); } return false; } return true; } public OnPlayerDisconnect(playerid, reason) { PlayerUpdate(playerid); PLAYERLIST_authed[playerid] = 0; return true; } dcmd_register(playerid,params[]) { if(PLAYERLIST_authed[playerid] == 1) return SendClientMessage(playerid,COLOR_WHITE,"You have already had an account."); if(udb_Exists(GetName(playerid))) return SendClientMessage(playerid,COLOR_LREGISTER,".:: [ACCOUNT]: You have already created an account, /login [password]"); if(!strlen(params)) return SendClientMessage(playerid,COLOR_WHITE,"[USAGE]: /register [password]"); if(udb_Create(GetName(playerid),params)) return SendClientMessage(playerid,COLOR_LREGISTER,".:: You have successfully created your account, now use /login [password]"); return true;} dcmd_login(playerid,params[]) { if(PLAYERLIST_authed[playerid] == 1) return SendClientMessage(playerid,COLOR_WHITE,"You have already logined."); if(!udb_Exists(GetName(playerid))) return SendClientMessage(playerid,COLOR_LREGISTER,".:: [ACCOUNT]: You do not have an account, please /register [password]"); if(!strlen(params)) return SendClientMessage(playerid,COLOR_WHITE,"[USAGE]: /login [password]"); if(udb_CheckLogin(GetName(playerid),params)) { PlayerInfo[playerid][pLevel] = dUserINT(GetName(playerid)).("level"); PlayerInfo[playerid][pBanned] = dUserINT(GetName(playerid)).("banned"); PlayerInfo[playerid][pAdmin] = dUserINT(GetName(playerid)).("adminlvl"); PlayerInfo[playerid][pIsjailed] = dUserINT(GetName(playerid)).("isjailed"); PlayerInfo[playerid][pJailed] = dUserINT(GetName(playerid)).("jailed"); dUserSet(GetName(playerid)).("ip",GetIp(playerid)); PlayerInfo[playerid][pCash] = dUserINT(GetName(playerid)).("money"); PlayerInfo[playerid][pBank] = dUserINT(GetName(playerid)).("bank"); PlayerInfo[playerid][pKills] = dUserINT(GetName(playerid)).("kills"); PlayerInfo[playerid][pDeaths] = dUserINT(GetName(playerid)).("deaths"); PlayerInfo[playerid][pHours] = dUserINT(GetName(playerid)).("hours"); PlayerInfo[playerid][pMins] = dUserINT(GetName(playerid)).("mins"); PlayerInfo[playerid][pSex] = dUserINT(GetName(playerid)).("sex"); PlayerInfo[playerid][pAge] = dUserINT(GetName(playerid)).("age"); PlayerInfo[playerid][pJob] = dUserINT(GetName(playerid)).("job"); PlayerInfo[playerid][pMember] = dUserINT(GetName(playerid)).("member"); PlayerInfo[playerid][pRank] = dUserINT(GetName(playerid)).("rank"); PlayerInfo[playerid][pSkin] = dUserINT(GetName(playerid)).("skin"); SetPlayerScore(playerid,PlayerInfo[playerid][pLevel]); GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]); PLAYERLIST_authed[playerid] = 1; SpawnPlayer(playerid); return SendClientMessage(playerid,COLOR_LREGISTER,".:: Successfully authed ::."); } SendClientMessage(playerid,COLOR_WHITE,"Wrong password or name!"); return true; }
Does anyone know how to fix this?