Moin Gemeinde,
nach Tagen , die ich damit verbracht habe die Fahrzeuge aus der MysqlTabelle zu laden, habe ich es endlich geschafft.
Fahrzeuge werden gespeichert und auch geladen.
Nur beim Laden der Fahrzeuge gibt es ein Problem.
Wie in der Console zu sehen ist, werden sie richtig geladen:
Aber sobald ich im Script eine Abfrage mache, verschiebt sich die ID , und das zuletzt erstellete bzw. geladene Auto , hat die Variablen alle auf null stehen:
Komme da einfach nicht weiter.
Hier ist der Code:
Code
loadPlayerCars()
{
new query[128];
format(query,sizeof(query),"SELECT * FROM autos");
mysql_function_query(dbhandle,query,true,"AutosLaden","");
printf("Autos werden gleich geladen");
return 1;
}
Code
getFreeCarID()
{
for(new i=0; i<sizeof(cInfo); i++)
{
if(cInfo[i][cDbId]==0)return i;
}
return 0;
}
Code
public AutosLaden()
{
new num_fields,num_rows;
cache_get_data(num_rows,num_fields,dbhandle);
if(!num_rows)return 1;
for(new i = 0; i<num_rows; i++)
{
new string[512];
new id=getFreeCarID();
cInfo[id][cDbId]=cache_get_field_content_int(i,"id",dbhandle);
cInfo[id][cModel]=cache_get_field_content_int(i,"modelid",dbhandle);
cInfo[id][cBesitzer]=cache_get_field_content_int(i,"besitzer",dbhandle);
cInfo[id][cX]=cache_get_field_content_float(i,"x",dbhandle);
cInfo[id][cY]=cache_get_field_content_float(i,"y",dbhandle);
cInfo[id][cZ]=cache_get_field_content_float(i,"z",dbhandle);
cInfo[id][cR]=cache_get_field_content_float(i,"r",dbhandle);
cInfo[id][cFarbe1]=cache_get_field_content_int(i,"farbe1",dbhandle);
cInfo[id][cFarbe2]=cache_get_field_content_int(i,"farbe2",dbhandle);
cInfo[id][cVehArt]=cache_get_field_content_int(i,"vehart",dbhandle);
cInfo[id][cId] = CreateVehicle(cInfo[id][cModel],cInfo[id][cX],cInfo[id][cY],cInfo[id][cZ],cInfo[id][cR],cInfo[id][cFarbe1],cInfo[id][cFarbe2],-1);
format(string,sizeof(string),"4 DBID: %i | model: %i | Autoart: %i",cInfo[id][cDbId],cInfo[id][cModel],cInfo[id][cVehArt]);
printf(string);
}
return 1;
}
Alles anzeigen
Wiegsagt, finde den Fehler nicht. vieleicht kann mir da ja jemand weiterhelfen.
Mfg und vielen Dank im vorraus