public switchChar(id) { new Authid[36],Data[1] get_user_authid(id,Authid,35) format(g_Query,511,"SELECT * FROM %s WHERE authid='%s'",g_AltJobsTable,Authid) SQL_ThreadQuery(g_SqlHandle,"FetchClientData",g_Query,Data,1) SaveUserData(id) DPRP_SetUserBank(id, bankStorage[id]) DPRP_SetUserWallet(id, walletStorage[id]) DPRP_SetUserHunger(id,hungerStorage[id]) DPRP_SetUserJobId(id, jobIDStorage[id]) //DPRP_SetUserAccess(id,accessStorage[id]) } public FetchClientData(FailState,Handle:Query,Error[],Errcode,Data[],DataSize) { if(FailState == TQUERY_CONNECT_FAILED) { format(g_Query,511,"Could not connect to SQL database.") return DPRP_ThrowError(1,g_Query,0) } else if(FailState == TQUERY_QUERY_FAILED) { format(g_Query,511,"Internal error: consult developer.") return DPRP_ThrowError(1,g_Query,0) } if(Errcode) { format(g_Query,511,"Error on query: %s",Error) return DPRP_ThrowError(1,g_Query,0) } new id = Data[0] if(SQL_NumResults(Query) < 1) //If user is not in AltJobsTable { new Authid[36], StartMoney = get_cvar_num(StartMoneyCvar) get_user_authid(id,Authid,35) format(g_Query,511,"INSERT INTO %s VALUES('%s','Unemployed','%d','0','0','','')",g_AltJobsTable,Authid,StartMoney) SQL_ThreadQuery(g_SqlHandle,"IgnoreHandle",g_Query) new Results[1] DPRP_FindJobId("Unemployed",Results,1) Results[0] -= 1 if(!DPRP_ValidJobId(Results[0])) Results[0] = DPRP_AddJob("Unemployed",5,0) - 1 bankStorage[id] = StartMoney hungerStorage[id] = 0 walletStorage[id] = 0 jobIDStorage[id] = Results[0] accessStorage[id] = 0 // g_Access[id] = array_get_int(array_get_int(g_JobsArray,Results[0]),3) // g_AccessCache[id] = 0 // g_Salary[id] = array_get_int(array_get_int(g_JobsArray,Results[0]),2) //array_clear(g_UserItemArray[id]) return PLUGIN_CONTINUE } bankStorage[id] = SQL_ReadResult(Query,1) walletStorage[id] = SQL_ReadResult(Query,2) new Results[2], Temp[512] SQL_ReadResult(Query,3,Temp,511) DPRP_FindJobId(Temp,Results,2) jobIDStorage[id] = Results[0]-1 if((Results[0] && Results[1]) || !Results[0]) { //g_BadJob[id] = 1 DPRP_FindJobId("Unemployed",Results,1) if(!DPRP_ValidJobId(Results[0] - 1)) Results[0] = DPRP_AddJob("Unemployed",5,0) - 1 jobIDStorage[id] = Results[0] - 1 //g_Salary[id] = 5 client_print(id,print_chat,"Error - Job + Unemployed can not be found. Alert an admin!") } else if(DPRP_ValidJobId(jobIDStorage[id])) { //g_BadJob[id] = 0 } else { //g_BadJob[id] = 1 DPRP_FindJobId("Unemployed",Results,1) if(!DPRP_ValidJobId(Results[0] - 1)) Results[0] = DPRP_AddJob("Unemployed",5,0) - 1 jobIDStorage[id] = Results[0] - 1 //g_Salary[id] = 5 client_print(id,print_chat,"Error - Job can not be found. Alert an admin!") } hungerStorage[id] = SQL_ReadResult(Query,4) SQL_ReadResult(Query,5,Temp,511) //accessStorage[id] = DPRP_AccessToInt(Temp) // g_AccessCache[id] = g_Access[id] // g_Salary[id] = array_get_int(array_get_int(g_JobsArray,g_JobId[id]),2) // g_Access[id] |= array_get_int(array_get_int(g_JobsArray,g_JobId[id]),3) return PLUGIN_CONTINUE }