On line 3590~ there is a bug that needs to be solved
Code:
bool bInitHighestSpeedrecord = false;
// Get the records if there are any
if (SQL_GetRowCount(hQuery) > 0)
{
// Fetch Data per Row
while (SQL_FetchRow(hQuery))
{
// Fetch the values
SQL_FetchString(hQuery, 0, clientSteamId, sizeof(clientSteamId));
SQL_FetchString(hQuery, 1, clientName, sizeof(clientName));
topspeed = Float:SQL_FetchFloat(hQuery, 2);
SQL_FetchString(hQuery, 3, topspeedTimeStamp, sizeof(topspeedTimeStamp));
// Easy debug
PrintToServer("############# GET RECORD #############");
PrintToServer("%s %s %f %s %s", clientSteamId, clientName, topspeed, topspeedTimeStamp, map);
PrintToServer("############# ---------- #############");
// Save it locally
if (StrEqual(map, g_sCurrentMap, false))
{
PushArrayString(g_hRecordSteamId, clientSteamId);
PushArrayString(g_hRecordName, clientName);
PushArrayCell(g_hRecordMaxSpeed, topspeed);
PushArrayString(g_hRecordMaxSpeedTimeStamp, topspeedTimeStamp);
if (!bInitHighestSpeedrecord)
{
g_fHighestSpeedrecord = topspeed;
bInitHighestSpeedrecord = true;
}
// Save the current highest speedrecord
if (topspeed > g_fHighestSpeedrecord)
{
g_fHighestSpeedrecord = topspeed;
}
}
The problem before is that it didn't reset the top speed record if it was lower for a different map. Hopefully it's going to help someone