Das ist mir unerklärlich, es stimmt eigentlich alles.
Hast du denn irgendwo auf dem Server noch anderen 3D Labels, die du siehst? Wenn nein, versuche mal auf einem leeren Server eines zu erstellen, und schau ob du das siehst. Nicht dass es am Ende an deinem Spiel liegt, dass es nicht geht, und es andere aber sehen.
PS: Ich bin ab morgen im Urlaub und werde dir erst danach wieder antworten können. Was ich dir anbieten kann ist, wenn du es nicht bis dahin gelöst bekommst, dass du mir den Code komplett mal schickst (in PN) und ich es bei mir teste, wenn ich aus dem Urlaub wieder zu Hause bin.
EDIT:
Wie blind man doch sein kann, wenn man glaubt, alles passt. Tatsächlich hat bei dem Text Label die Draw-Distance gefehlt, somit war diese auf 0. Unglaublich, dass mir das nicht aufgefallen ist.
Immerhin ein Trost, das hat das Problem auch nicht gelöst, sondern der Code musste etwas angepasst werden, um korrekt zu funktionieren.
Zum einen das hier so:
case QueryCallHouse:
{
cache_get_data(rows,fields);
if(rows) {
oldtime=GetTickCount();
new ho;
for(;ho<rows;ho++) {
//if(ho==0){ho++;}
cache_get_field_content(ho,"ID",result);
HausInfo[ho][hID] = strval(result);
cache_get_field_content(ho,"PosX",result);
HausInfo[ho][hPosX] = floatstr(result);
cache_get_field_content(ho,"PosY",result);
HausInfo[ho][hPosY] = floatstr(result);
cache_get_field_content(ho,"PosZ",result);
HausInfo[ho][hPosZ] = floatstr(result);
cache_get_field_content(ho,"Level",result);
HausInfo[ho][hLevel] = strval(result);
cache_get_field_content(ho,"Preis",result);
HausInfo[ho][hPreis] = strval(result);
cache_get_field_content(ho,"Besitzer",result);
format(HausInfo[ho][hBesitzer],24,"%s",result);
cache_get_field_content(ho,"Bought",result);
HausInfo[ho][hBought] = strval(result);
cache_get_field_content(ho,"Rooms",result);
HausInfo[ho][hRooms] = strval(result);
cache_get_field_content(ho,"InteriorID",result);
HausInfo[ho][hInteriorID] = strval(result);
cache_get_field_content(ho,"Interior",result);
HausInfo[ho][hInterior] = strval(result);
cache_get_field_content(ho,"IntX",result);
HausInfo[ho][hIntX] = floatstr(result);
cache_get_field_content(ho,"IntY",result);
HausInfo[ho][hIntY] = floatstr(result);
cache_get_field_content(ho,"IntZ",result);
HausInfo[ho][hIntZ] = floatstr(result);
cache_get_field_content(ho,"Locked",result);
HausInfo[ho][hLocked] = strval(result);
cache_get_field_content(ho,"Rentable",result);
HausInfo[ho][hRentable] = strval(result);
cache_get_field_content(ho,"RentPrice",result);
HausInfo[ho][hRentPrice] = strval(result);
cache_get_field_content(ho,"Renter1",result);
format(HausInfo[ho][hRenter1],24,"%s",result);
cache_get_field_content(ho,"Renter2",result);
format(HausInfo[ho][hRenter2],24,"%s",result);
cache_get_field_content(ho,"Renter3",result);
format(HausInfo[ho][hRenter3],24,"%s",result);
cache_get_field_content(ho,"Renter4",result);
format(HausInfo[ho][hRenter4],24,"%s",result);
cache_get_field_content(ho,"Renter5",result);
format(HausInfo[ho][hRenter5],24,"%s",result);
cache_get_field_content(ho,"Renter6",result);
format(HausInfo[ho][hRenter6],24,"%s",result);
HausInfo[ho][hVW] = HausInfo[ho][hID]+1;
HausInfo[ho][hOutPickup] = CreatePickup(1318,1,HausInfo[ho][hIntX],HausInfo[ho][hIntY],HausInfo[ho][hIntZ],0);
if(HausInfo[ho][hBought] == 0) {
HausInfo[ho][hPickup] = CreatePickup(1272,1,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ]);
format(str,256,"Hausnummer %d\nDieses Haus ist zu verkaufen!\nPreis: %s€\nLevel: %d\nMieträume: %d\nHaus besichtigen: ~k~~VEHICLE_ENTER_EXIT~ drücken\nHaus kaufen: /buy",ho,inspoints(HausInfo[ho][hPreis]),HausInfo[ho][hLevel],HausInfo[ho][hRooms]);
} else {
if(HausInfo[ho][hRentable] == 1) {
format(str,256,"Hausnummer %d\nBesitzer: %s\nMietpreis: %s€\nZimmer mieten - /rentroom",ho,HausInfo[ho][hBesitzer],inspoints(HausInfo[ho][hRentPrice]));
} else if(HausInfo[ho][hRentable] == 0) {
format(str,256,"Hausnummer %d\nBesitzer: %s",ho,HausInfo[ho][hBesitzer]);
}
HausInfo[ho][hPickup] = CreatePickup(1239,1,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ]);
}
HausInfo[ho][hLabel]=Create3DTextLabel(str,COLOR_AO,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ],5,0,1);
printf("ho: %d / Erstellte Label ID: %d", ho, _:HausInfo[ho][hLabel]);
printf("Label Details: Color: %d / Pos: %f / %f / %f => 0, 1", COLOR_AO,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ]);
printf("Label Text: %s |ENDE", str);
HausInfo[ho][hOutLabel]=Create3DTextLabel("Austreten:\n~k~~VEHICLE_ENTER_EXIT~ drücken",COLOR_AO,HausInfo[ho][hIntX],HausInfo[ho][hIntY],HausInfo[ho][hIntZ],5,HausInfo[ho][hVW],1);
HausInfo[ho][hCreated]=true;
}
printf("<-| [MYSQL-LOAD] Es wurden %d Häuser geladen - Dauer: %dms",ho,GetTickCount()-oldtime);
}
}
Und zum anderen das hier so:
case QueryCallLoadHouse:
{
cache_get_data(rows,fields);
if(rows) {
new ho = cache_get_field_content_int(0, "ID");
//if(ho==0){ho++;}
cache_get_field_content(0,"ID",result);
HausInfo[ho][hID] = strval(result);
cache_get_field_content(0,"PosX",result);
HausInfo[ho][hPosX] = floatstr(result);
cache_get_field_content(0,"PosY",result);
HausInfo[ho][hPosY] = floatstr(result);
cache_get_field_content(0,"PosZ",result);
HausInfo[ho][hPosZ] = floatstr(result);
cache_get_field_content(0,"Level",result);
HausInfo[ho][hLevel] = strval(result);
cache_get_field_content(0,"Preis",result);
HausInfo[ho][hPreis] = strval(result);
cache_get_field_content(0,"Besitzer",result);
format(HausInfo[ho][hBesitzer],24,"%s",result);
cache_get_field_content(0,"Bought",result);
HausInfo[ho][hBought] = strval(result);
cache_get_field_content(0,"Rooms",result);
HausInfo[ho][hRooms] = strval(result);
cache_get_field_content(0,"InteriorID",result);
HausInfo[ho][hInteriorID] = strval(result);
cache_get_field_content(0,"Interior",result);
HausInfo[ho][hInterior] = strval(result);
cache_get_field_content(0,"IntX",result);
HausInfo[ho][hIntX] = floatstr(result);
cache_get_field_content(0,"IntY",result);
HausInfo[ho][hIntY] = floatstr(result);
cache_get_field_content(0,"IntZ",result);
HausInfo[ho][hIntZ] = floatstr(result);
cache_get_field_content(0,"Locked",result);
HausInfo[ho][hLocked] = strval(result);
cache_get_field_content(0,"Rentable",result);
HausInfo[ho][hRentable] = strval(result);
cache_get_field_content(0,"RentPrice",result);
HausInfo[ho][hRentPrice] = strval(result);
cache_get_field_content(0,"Renter1",result);
format(HausInfo[ho][hRenter1],24,"%s",result);
cache_get_field_content(0,"Renter2",result);
format(HausInfo[ho][hRenter2],24,"%s",result);
cache_get_field_content(0,"Renter3",result);
format(HausInfo[ho][hRenter3],24,"%s",result);
cache_get_field_content(0,"Renter4",result);
format(HausInfo[ho][hRenter4],24,"%s",result);
cache_get_field_content(0,"Renter5",result);
format(HausInfo[ho][hRenter5],24,"%s",result);
cache_get_field_content(0,"Renter6",result);
format(HausInfo[ho][hRenter6],24,"%s",result);
HausInfo[ho][hVW] = HausInfo[ho][hID]+1;
HausInfo[ho][hOutPickup] = CreatePickup(1318,1,HausInfo[ho][hIntX],HausInfo[ho][hIntY],HausInfo[ho][hIntZ],0);
if(HausInfo[ho][hBought] == 0) {
HausInfo[ho][hPickup] = CreatePickup(1272,1,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ]);
format(str,256,"Hausnummer %d\nDieses Haus ist zu verkaufen!\nPreis: %s€\nLevel: %d\nMieträume: %d\nHaus besichtigen: ~k~~VEHICLE_ENTER_EXIT~ drücken\nHaus kaufen: /buy",ho,inspoints(HausInfo[ho][hPreis]),HausInfo[ho][hLevel],HausInfo[ho][hRooms]);
} else {
if(HausInfo[ho][hRentable] == 1) {
format(str,256,"Hausnummer %d\nBesitzer: %s\nMietpreis: %s€\nZimmer mieten - /rentroom",ho,HausInfo[ho][hBesitzer],inspoints(HausInfo[ho][hRentPrice]));
} else if(HausInfo[ho][hRentable] == 0) {
format(str,256,"Hausnummer %d\nBesitzer: %s",ho,HausInfo[ho][hBesitzer]);
}
HausInfo[ho][hPickup] = CreatePickup(1239,1,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ]);
}
HausInfo[ho][hLabel]=Create3DTextLabel(str,COLOR_AO,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ],5,0,1);
printf("ho: %d / Erstellte Label ID: %d", ho, _:HausInfo[ho][hLabel]);
printf("Label Details: Color: %d / Pos: %f / %f / %f => 0, 1", COLOR_AO,HausInfo[ho][hPosX],HausInfo[ho][hPosY],HausInfo[ho][hPosZ]);
printf("Label Text: %s |ENDE", str);
HausInfo[ho][hOutLabel]=Create3DTextLabel("Austreten:\n~k~~VEHICLE_ENTER_EXIT~ drücken",COLOR_AO,HausInfo[ho][hIntX],HausInfo[ho][hIntY],HausInfo[ho][hIntZ],5,HausInfo[ho][hVW],1);
HausInfo[ho][hCreated]=true;
}
}
Dann klappt mit den Text Labels - endlich - alles.