public client_connect(id)
{
LoadData(id)
}
public client_disconnect(id) SaveData(id)
public plugin_end()
{
SQL_FreeHandle(g_SqlTuple)
}
public makeTuple()
{
g_SqlTuple = SQL_MakeDbTuple(Host,User,Pass,Db)
}
public createTable()
{
SQL_ThreadQuery(g_SqlTuple,"createTableThread", "CREATE TABLE IF NOT EXISTS tablaneve (`username` varchar(32), `oles` INT(255), `szint` INT(255))")
}
public createTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
if(FailState == TQUERY_CONNECT_FAILED)
return set_fail_state("Nem tudtam csatlakozni az adatbazishoz.")
else if(FailState == TQUERY_QUERY_FAILED)
return set_fail_state("query hiba")
if(Errcode)
return log_amx("Hibat dobtam: %s",Error)
return PLUGIN_CONTINUE
}
public SaveData(id)
{
new szTemp[512]
new nev[32]
get_user_name(id, nev, 31)
format(szTemp,charsmax(szTemp),"UPDATE `tablaneve` SET `pont` = '%i', `szint` = '%i WHERE `tablaneve`.`username` = '%s';", pont[id], szint[id], nev)
SQL_ThreadQuery(g_SqlTuple,"updateTableThread", szTemp)
}
public updateTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
if(FailState == TQUERY_CONNECT_FAILED)
return set_fail_state("Nem tudtam csatlakozni az adatbazishoz.")
else if(FailState == TQUERY_QUERY_FAILED)
return set_fail_state("query hiba")
if(Errcode)
return log_amx("Hibat dobtam: %s",Error)
return PLUGIN_CONTINUE
}
public updateTableStatsThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
{
if(FailState == TQUERY_CONNECT_FAILED)
return set_fail_state("Nem tudtam letrehozni az adatbazist.")
else if(FailState == TQUERY_QUERY_FAILED)
return set_fail_state("query hiba")
if(Errcode)
return log_amx("Hibat dobtam: %s",Error)
return PLUGIN_CONTINUE
}
public LoadData(id)
{
new name[32]
get_user_name(id, name, 31)
new ErrorCode
new Error[512]
new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
if(SqlConnection == Empty_Handle)
{
set_fail_state(Error)
}
new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM tablaneve WHERE username='%s'", name)
if(!SQL_Execute(Query))
{
SQL_QueryError(Query, Error, 511)
set_fail_state(Error)
}
new iRowsFound = SQL_NumRows(Query)
if(iRowsFound < 1)
{
pont[id] = 0;
szint[id] = 0;
}
else
{
new upont = SQL_FieldNameToNum(Query, "pont")
new uszint = SQL_FieldNameToNum(Query, "szint")
pont[id] = SQL_ReadResult(Query, upont)
szint[id] = SQL_ReadResult(Query, uszint)
}
SQL_FreeHandle(Query)
SQL_FreeHandle(SqlConnection)
}