Haus System buggt

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hi,
    Ich habe eben ein Haus System gebaut und nun habe ich das Problem das wenn er ein Haus erstellt, das alles erstellt wird jedoch wenn ich das Haus kaufen will sagt er mir das ich nicht am Haus bin.


    Hier mal die Zeilen:


    /Hauserstellen:

    dcmd_Hauserstellen(playerid, params[])
    {
    new Float:px, Float: py, Float:pz;
    new pPreis, pInterior;
    if(sscanf(params,"dd",pPreis, pInterior))
    {
    SendClientMessage(playerid,COLOR_RED,"Benutze: /Hauserstellen [Preis] [Interior]");
    return 1;
    }
    if(pInfo[playerid][Admin] >= 3)
    {
    print("ID");
    mysql_query("SELECT `ID` FROM `haus` ORDER BY `ID` ASC");
    mysql_store_result();
    new rows = mysql_num_rows();
    new Val = rows += 1;
    GetPlayerPos(playerid ,px, py, pz);
    new query[50];
    print("Insert");
    format(query,sizeof query,"INSERT INTO `haus` (ID) VALUES('%d')",Val);
    mysql_query(query);
    hInfo[Val][Besitzer] = strval("Niemand");
    hInfo[Val][Preis] = pPreis;
    printf("DEBUG: %s %d",hInfo[Val][Besitzer],pPreis);
    hInfo[Val][VirtualWorld] = Val;
    hInfo[Val][InBesitz] = 0;
    hInfo[Val][hx] = px;
    hInfo[Val][hy] = py;
    hInfo[Val][hz] = pz;
    hInfo[Val][Verschlossen] = 1;
    hInfo[Val][Mietbar] = 0;
    hInfo[Val][Interior] = pInterior;
    print("Update Start");
    UpdateHouse(Val);
    new string[128];
    HousePickups[Val] = CreatePickup(1273, 1, hInfo[Val][hx], hInfo[Val][hy], hInfo[Val][hz]);
    format(string,sizeof(string),"{179C13}Dieses Haus steht zum Verkauf\n{179C13}Preis:{FFFFFF} %d$\n{FFFFFF}/Hauskaufen um es zu kaufen\n", hInfo[Val][Preis]);
    HouseLabel[Val] = Create3DTextLabel(string,COLOR_WHITE, hInfo[Val][hx], hInfo[Val][hy], hInfo[Val][hz], 20, 0, 1);


    SendClientMessage(playerid, COLOR_RED, "Das Haus wurde erfolgreich erstellt!");
    }
    return 1;
    }



    /Hauskaufen:

    dcmd_Hauskaufen(playerid, params[])
    {
    #pragma unused params
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, sizeof(pName));


    mysql_query("SELECT `ID` FROM `haus` ORDER BY `ID` ASC");
    mysql_store_result();
    new rows = mysql_num_rows();
    for(new h = 0; h != rows; h++)
    {
    if(IsPlayerInRangeOfPoint(playerid, 5.0, hInfo[h][hx], hInfo[h][hy], hInfo[h][hz]))
    {
    if(hInfo[h][InBesitz] == 0)
    {
    if(pInfo[playerid][Geld] >= hInfo[h][Preis])
    {
    GetMoney(playerid,hInfo[h][Preis]);
    hInfo[h][InBesitz] = 1;
    strmid(hInfo[h][Besitzer],pName,0,strlen(pName));
    hInfo[h][Mietbar] = 0;
    hInfo[h][Verschlossen] = 1;
    pInfo[playerid][HSchluessel] = h;
    UpdateHouse(h);
    SendClientMessage(playerid, COLOR_WHITE, "Glückwunsch zu deinem Kauf eines Hauses.");
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du hast nicht genug Geld!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Dieses Haus steht nicht zum Verkauf!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED,"Du bist an keinem Haus!");
    }
    }
    return 1;
    }


    Ich hoffe jemand weiss die Lösung ^^.

    Einmal editiert, zuletzt von Stefan_Wayne ()

  • Dazu kommt noch das sich ein Haus wenn man es gekauft hat , nach einem relog wieder zum verkauf setzt.