Guten Tag
Ich habe mehrere Hotels und somit auch mehrere Hotelzimmer. der besitzer des Hotels kann sein Hotel ganz einfach über dialogen verwalten.
Nun soll es auch eine Allgemeine Info für das Hotel geben wo drinne steht:
Hotel:
Kasse:
Mietpreis:
Belegte Zimmer:
Hotelzimmer:
//hier alle hotelzimmer aufgelistet (je nach hotel verschiedend)
da alles zusammen ziemlich groß ist und jedes Hotel eine andere Anzahl von Hotelzimmern habe, habe ich es mal so so gelöst:
if(dialogid == Dialog_Hotel) // Hotel dialog
{
if(response)
{
if(listitem == 0) // 0 == Hotel info
{
for(new i = 0; i < sizeof Hotels; i++) // geht alle Hotels durch
{
if(IsPlayerInRangeOfPoint(playerid,2.5,Hotels[i][hpx],Hotels[i][hpy],Hotels[i][hpz])) //überprüft, an welchem hotel er steht
{
new str[1700];
new sBug[1500];
sBug[0] = '\0';
for(new j = 0; j < sizeof pHotelzimmer; j++) // geht alle hotelzimmer durch
{
if(!strcmp(pHotelzimmer[j][HName2],Hotels[i][HName],true)) //überprüft welches Hotelzimmer zum Hotel gehört
{
new str2[300], Bizdatei[100];
format(Bizdatei,sizeof(Bizdatei),"/Hotelzimmer/%s %s",Hotels[i][HName],pHotelzimmer[j][ZName]);
if(!strcmp(dini_Get(Bizdatei,"Mietername"),"Keiner",true)) // falls keiner das Zimmer Mietet
{
format(str2,sizeof(str2),"%s Mieter: Keiner",pHotelzimmer[j][ZName]);
}
else // falls einer das Zimmer Mietet
{
format(str2,sizeof(str2),"%s Mieter: %s Lastlogin: %d.%d %d:%d",pHotelzimmer[j][ZName],dini_Get(Bizdatei,"Mietername"), pHotelzimmer[i][Mieterlogday], pHotelzimmer[i][Mieterlogmonth], pHotelzimmer[i][Mieterloghour], pHotelzimmer[i][Mieterlogminute]);
}
format(sBug,sizeof(sBug),"%s%s\n",sBug,str2); // hier werden alle strings der hotelzimmer zusammengepackt
}
}
format(str,sizeof(str),"Hotel: %s\nKasse: $%d\nBelegte Zimmer: %d / %d\nMietpreis: $%d\n\nHotelzimmer:\n%s",Hotels[i][HName],Hotels[i][Kasse],Hotels[i][Mieter],Hotels[i][Zimmer],Hotels[i][Mietpreis],sBug);
ShowPlayerDialog(playerid,Dialog_Hotel_Info,DIALOG_STYLE_MSGBOX,"Hotel - Info",str,"Verwaltung","");
}
}
}
}
}
Das Problem ist nun, das mir, wenn ich die Strings verkleinere nur die Hälfte vom Text im Dialog angezeigt wird bzw. wenn ich die Strings vergrößere erst gar kein Dialog kommt und anschließende Commands funktionieren auch nicht.
Wäre sehr nett wenn mir jemand bei diesem Problem helfen könnte.
Mfg
Simon
//edit: klappt alles