Warum willst du das machen?
bzw was ist mit Speichern?
und das mit der Sekunde wegploppen liebt an diesen Schnipsel
if(hInfo[id][h_pickup] != -1) {DestroyPickup(hInfo[id][h_pickup]);}if(hInfo[id][h_text] != Text3D:-1) {Delete3DTextLabel(hInfo[id][h_text]);}
Und ausserdem Wegen dem hier...
for(new i=0; i<sizeof(hInfo); i++) { OnHausesLoad(); updateHaus(i); }
Du lässt also OnHausesLoad(); um die 100-500 mal ausführen je nach dem wie viele häuser du hast???
Also du lässt in einer schleife ne näste schleife machen HÄÄÄ
machd as mal so XD
forward Hausupdate();public Hausupdate(){ for(new i=0; i<sizeof(hInfo); i++) { updateHaus(i); } OnHausesLoad(); return 1;}
wobei vergiss dass ich würd einfach so amchen XD
forward Hausupdate();
public Hausupdate()
{
OnHausesLoad();
return 1;
}
updateHaus(id)
{
new string[128];
if(hInfo[id][h_pickup] != -1)
{
DestroyPickup(hInfo[id][h_pickup]);
}
if(hInfo[id][h_text] != Text3D:-1)
{
Delete3DTextLabel(hInfo[id][h_text]);
}
if(!strlen(hInfo[id][h_besitzer]))
{
hInfo[id][h_pickup]=CreatePickup(1273, 1, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], -1);
format(string,sizeof(string), "Zum Verkauf\nKosten: %i$\n/hauskaufen", hInfo[id][h_preis]);
hInfo[id][h_text]=Create3DTextLabel(string, COLOR_RED, 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, COLOR_BUSBLUE, hInfo[id][h_x], hInfo[id][h_y], hInfo[id][h_z], 10, 0, 1);
}
return 1;
}
public OnHausesLoad()
{
new num_rows;
cache_get_row_count(num_rows);
if(!num_rows)return 1;
for(new i=0; i<num_rows; i++)
{
new id=getFreeHausID();
cache_get_value_name_float(i, "h_x", hInfo[id][h_x]); //Float
cache_get_value_name_float(i, "h_y", hInfo[id][h_y]); //Float
cache_get_value_name_float(i, "h_z", hInfo[id][h_z]); //Float
cache_get_value_name_float(i, "ih_x", hInfo[id][ih_x]); //Float
cache_get_value_name_float(i, "ih_y", hInfo[id][ih_y]); //Float
cache_get_value_name_float(i, "ih_z", hInfo[id][ih_z]); //Float
cache_get_value_name_int(i, "h_interior", hInfo[id][h_interior]); //Float
new tmp_name[MAX_PLAYER_NAME];
cache_get_value_name(i, "besitzer", hInfo[id][h_besitzer]); //Float
strmid(hInfo[id][h_besitzer], tmp_name, 0, sizeof(tmp_name), sizeof(tmp_name));
cache_get_value_name_int(i, "id",hInfo[id][h_id]); //Float
cache_get_value_name_int(i, "h_preis",hInfo[id][h_preis]); //Float
updateHaus(id);
}
return 1;
}
Wobei ich wiegesagt nicht ganz verstehe warum du die Häuser nochmal von der Datenbank auslsesen lassen willst...