Sehr geehrte Breadfish User,
ich habe leider ein Problem mit meinem Haussystem. Es wird bei LoadHaus(hausid) entweder gar keine Abfrage gemacht oder das Pickup erscheint einfach nicht.
P.S mysql_getfloat erfordert bei dem 4. Argument einen String, daher die Umwandlung.
////////////////// HAUS - SYSTEM ///////////////
stock CreateHouse(Float:x,Float:y,Float:z,preis,inhaber[32],interior)
{
new query[256];
format(query, sizeof(query), "INSERT INTO `houses` (`x`, `y`,`z`,`preis`,`inhaber`,`interior`) VALUES ('%d', '%d','%d','%d','%s','%d')",x,y,z,preis,inhaber,interior);
mysql_query(query);
return LoadHaus(mysql_insert_id());
}
ocmd:hcreate(playerid,params[])
{
if(GetPVarInt(playerid,"Adminlevel")< 5)
{
SendClientMessage(playerid,ROT,"Sie sind nicht befugt diesen Befehl zu benutzen!");
}
else
{
new hauspreis;
new interior;
if(sscanf(params,"dd",hauspreis,interior))
{
return SendClientMessage(playerid,WEISS,"Benutze:/hcreate [preis][interior]");
}
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
CreateHouse(x,y,z,hauspreis,"Zu verkaufen",interior);
}
return 1;
}
stock LoadHaus(hausid)
{
new haus[32];
format(haus,sizeof(haus),"%d",hausid);
HausInfo[hausid][haus_x] = mysql_GetFloat("houses","x","id",haus);
HausInfo[hausid][haus_y] = mysql_GetFloat("houses","y","id",haus);
HausInfo[hausid][haus_z] = mysql_GetFloat("houses","z","id",haus);
HausInfo[hausid][haus_preis] = mysql_GetInt("houses","preis","id",haus);
//HausInfo[hausid][haus_verkauft] = mysql_GetInt("houses","verkauft","id",haus);
HausInfo[hausid][haus_interior] = mysql_GetInt("houses","interior","id",haus);
HausInfo[hausid][haus_miete] = mysql_GetInt("houses","miete","id",haus);
format(HausInfo[hausid][mieter][0],MAX_PLAYER_NAME,"%s",mysql_GetString("houses","mieter1","id",haus));
format(HausInfo[hausid][mieter][1],MAX_PLAYER_NAME,"%s",mysql_GetString("houses","mieter2","id",haus));
format(HausInfo[hausid][mieter][2],MAX_PLAYER_NAME,"%s",mysql_GetString("houses","mieter3","id",haus));
format(HausInfo[hausid][mieter][4],MAX_PLAYER_NAME,"%s",mysql_GetString("houses","mieter4","id",haus));
HausInfo[hausid][haus_mietbar]=mysql_GetInt("houses","mietbar","id",haus);
HausInfo[hausid][haus_virtualworld]=mysql_GetInt("houses","virtualworld","id",haus);
format(HausInfo[hausid][haus_inhaber],32,"%s",mysql_GetString("houses","inhaber","id",haus));
if(!strcmp(HausInfo[hausid][haus_inhaber],"Zu verkaufen"))
{
HausInfo[hausid][haus_symbol] = CreatePickup(1273 ,23,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],0);
new label[192];
format(label,sizeof(label),"HAUS ID: %d\nZu verkaufen\nPreis:%d",hausid,HausInfo[hausid][haus_preis]);
HausInfo[hausid][haus_label] = Create3DTextLabel(label,WEISS,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],20.0,0);
}
else
{
HausInfo[hausid][haus_symbol] = CreatePickup(1272 ,23,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],0);
new label[192];
new freiraum[MAX_HAUS];
for(new i=0;i<4;i++)
{
new besetzt[MAX_HAUS];
if(!strcmp(HausInfo[hausid][mieter][i],""))
besetzt[hausid]++;
freiraum[hausid]=4-besetzt[hausid];
}
if(freiraum[hausid] < 0)
{
freiraum[hausid]=0;
}
format(label,sizeof(label),"HAUS ID: %d\nBesitzer:%s\nMiete:%d\nFreie Räume:%d",hausid,HausInfo[hausid][haus_inhaber],HausInfo[hausid][haus_miete],freiraum[hausid]);
HausInfo[hausid][haus_label] = Create3DTextLabel(label,WEISS,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],20.0,0);
}
return 1;
}