stock LoadFactionVehicles()
{
new Query[500];
for(new i = 1;i<MAX_FACTION_VEHICLES;i++)
{
format(Query, sizeof(Query), "SELECT * FROM `vehicledata` WHERE `ID` = %d LIMIT 1", i);
mysql_query(Query);
mysql_store_result();
while(mysql_fetch_row(Query))
{
mysql_fetch_int("ID", vInfo[i][ID]);
mysql_fetch_int("ModelID", vInfo[i][ModelID]);
mysql_fetch_int("posX", vInfo[i][posX]);
mysql_fetch_int("posY", vInfo[i][posY]);
mysql_fetch_int("posZ", vInfo[i][posZ]);
mysql_fetch_int("posA", vInfo[i][posA]);
mysql_fetch_int("ColorA", vInfo[i][ColorA]);
mysql_fetch_int("ColorB", vInfo[i][ColorB]);
mysql_fetch_int("Faction", vInfo[i][Faction]);
mysql_fetch_int("Plate", vInfo[i][NrPlate]);
CreateVehicle(vInfo[i][ModelID], vInfo[i][posX], vInfo[i][posY], vInfo[i][posZ], vInfo[i][posA], vInfo[i][ColorA], vInfo[i][ColorB], 10000000000000, 1);
SetVehicleNumberPlate(i, vInfo[i][NrPlate]);
SetVehicleParamsForPlayer(i, i, 0, 1);
SetVehicleToRespawn(i);
}
mysql_free_result();
}
return 1;
}
forward OnLoadFactionVehicles();
stock LoadFactionVehicles()
{
mysql_function_query(MySQL, "SELECT * FROM `vehicledata`", true, "OnLoadFactionVehicles", "");
return 1;
}
public OnLoadFactionVehicles()
{
new rows, fields;
cache_get_data(rows, fields, MySQL);
if(rows)
{
for(new v = 0; v < rows; v++)
{
new vID = cache_get_field_content_int(v, "ID");
vInfo[vID][ID] = vID;
vInfo[vID][ModelID] = cache_get_field_content_int(v, "ModelID");
vInfo[vID][posX] = cache_get_field_content_float(v, "posX");
vInfo[vID][posY] = cache_get_field_content_float(v, "posY");
vInfo[vID][posZ] = cache_get_field_content_float(v, "posZ");
vInfo[vID][posA] = cache_get_field_content_float(v, "posA");
vInfo[vID][ColorA] = cache_get_field_content_int(v, "ColorA");
vInfo[vID][ColorB] = cache_get_field_content_int(v, "ColorB");
vInfo[vID][Faction] = cache_get_field_content_int(v, "Faction");
cache_get_field_content(v, "Plate", vInfo[vID][NrPlate]);
}
}
return 1;
}
PHP код:
Also you was sending a lot of queries to the database, this will most defiantly slow down the server / make it lag. This sends 1 query. |
Yes, am using BlueGs version too. It works fine with me, try replacing the MySQL files with the latest version.
|
stock LoadFactionVehicles()
{
new Query[500];
for(new i = 1;i<MAX_FACTION_VEHICLES;i++)
{
format(Query, sizeof(Query), "SELECT * FROM `vehicledata` WHERE `ID` = %d LIMIT 1", i);
mysql_query(Query);
mysql_store_result();
while(mysql_fetch_row(Query))
{
mysql_fetch_int("ID", vInfo[i][ID]);
mysql_fetch_int("ModelID", vInfo[i][ModelID]);
mysql_fetch_float("posX", vInfo[i][posX]);
mysql_fetch_float("posY", vInfo[i][posY]);
mysql_fetch_float("posZ", vInfo[i][posZ]);
mysql_fetch_float("posA", vInfo[i][posA]);
mysql_fetch_int("ColorA", vInfo[i][ColorA]);
mysql_fetch_int("ColorB", vInfo[i][ColorB]);
mysql_fetch_int("Faction", vInfo[i][Faction]);
mysql_fetch_int("Plate", vInfo[i][NrPlate]);
CreateVehicle(vInfo[i][ModelID], vInfo[i][posX], vInfo[i][posY], vInfo[i][posZ], vInfo[i][posA], vInfo[i][ColorA], vInfo[i][ColorB], 10000000000000, 1);
SetVehicleNumberPlate(i, vInfo[i][NrPlate]);
SetVehicleParamsForPlayer(i, i, 0, 1);
SetVehicleToRespawn(i);
}
mysql_free_result();
}
return 1;
}