OnHausesLoad wird so aufgerufen unter OnGameModeInit
Nur als Info, wenn du kein format nutzen musst, dann nutze es nicht
Das spart dir viel Speicher & Zeit, kannst es einfach so schreiben:
mysql_pquery(handle, "SELECT * FROM users_houses", "OnHausesLoad");
Kannst es so schreiben:
public OnHausesLoad()
{
new rows;
cache_get_row_count(rows);
for(new i,id,string[128]; i<rows; i++)
{
id = getFreeHausID();
cache_get_value_name_float(i,"h_x", hInfo[id][h_x]);
cache_get_value_name_float(i,"h_y", hInfo[id][h_y]);
cache_get_value_name_float(i,"h_z", hInfo[id][h_z]);
cache_get_value_name_float(i,"ih_x", hInfo[id][ih_x]);
cache_get_value_name_float(i,"ih_y", hInfo[id][ih_y]);
cache_get_value_name_float(i,"ih_z", hInfo[id][ih_z]);
cache_get_value_name_int(i,"h_interior", hInfo[id][h_interior]);
cache_get_value_name(i,"besitzer", hInfo[id][h_besitzer]);
cache_get_value_name_int(i,"id", hInfo[id][h_id]);
cache_get_value_name_int(i,"h_preis", hInfo[id][h_preis]);
printf("Besitzer: %s\n",hInfo[id][h_besitzer]); //<< schau mal, was er hier dir im server_log ausgibt ;)
if(!hInfo[id][h_besitzer][0])
{
hInfo[id][h_pickup] = CreatePickup(1273, 1, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], -1);
format(string,sizeof(string),"Zu Verkaufen\nPreis: %i$\n/buyhouse",hInfo[id][h_preis]);
hInfo[id][h_text] = Create3DTextLabel(string, WEISS,hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], 10, 0, 1);
}
else
{
hInfo[id][h_pickup] = CreatePickup(1239, 1, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], -1);
format(string,sizeof(string),"Besitzer: %s\n/enter",hInfo[id][h_besitzer]);
hInfo[id][h_text] = Create3DTextLabel(string, WEISS,hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], 10, 0, 1);
}
}
return 1;
}
Alles anzeigen
und die Struktur meiner DB sieht so aus:
Jaaa, das ist auch gut zu wissen, mich würde nur viel Lieber interessieren, ob da wirklich Namen drinnen stehen.
Also was die Einträge in der Tabelle sind 