/hauskaufen bug

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
  • Hey Leute,


    sobald ich ein Haus kaufe speichert es nur bis ich relogge.
    So speichert es ab :


    if(!strcmp(cmdtext, "/hauskaufen", true))
    {
    for(new i = 0; i<MAX_HOUSES; i++)
    {
    if(IsPlayerInRangeOfPoint(playerid, 5.0, HouseInfo[i][hEntrx], HouseInfo[i][hEntry], HouseInfo[i][hEntrz]))
    {
    if(!HouseInfo[i][hOwned])
    {
    if(GetPlayerMoney(playerid) < HouseInfo[i][hPrice])
    {
    SendClientMessage(playerid,COLOR_GREY, "Du hast nicht genug Geld!");
    return 1;
    }
    if(PlayerInfo[playerid][pHouseKey] != MAX_HOUSES+1)
    {
    SendClientMessage(playerid,COLOR_GREY, "Du besitzt bereits ein Haus!");
    return 1;
    }
    format(HouseInfo[i][hOwner], 24, sendername);
    HouseInfo[i][hOwned] = 1;
    UpdateHouseLabel(i);
    PlayerInfo[playerid][pHouseKey] = i;
    GivePlayerGeld(playerid, -HouseInfo[i][hPrice]);
    SendClientMessage(playerid,COLOR_GREY, "Glückwunsch zum Kauf der Immobilie!");
    SaveHouses();
    return 1;
    }
    }
    }
    return 1;
    }


    Ist da was falsch dran ?
    Lg

  • stock SaveHouse(i)
    {
    new str[60];
    format(str, sizeof str, "/Houses/%d.ini", i);
    if(fexist(str))
    {
    if(INI_Open(str))
    {
    INI_WriteString("Owner", HouseInfo[i][hOwner]);
    INI_WriteInt("Owned", HouseInfo[i][hOwned]);
    INI_WriteFloat("Entrx", HouseInfo[i][hEntrx]);
    INI_WriteFloat("Entry", HouseInfo[i][hEntry]);
    INI_WriteFloat("Entrz", HouseInfo[i][hEntrz]);
    INI_WriteInt("Price", HouseInfo[i][hPrice]);
    INI_WriteInt("Rentable", HouseInfo[i][hRentable]);
    INI_WriteInt("Rent", HouseInfo[i][hRentable]);
    INI_WriteInt("Intid", HouseInfo[i][hIntid]);
    INI_WriteInt("Locked", HouseInfo[i][hLocked]);
    INI_Save();
    INI_Close();
    }
    }
    return 1;
    }


    E:/ Also in der Datei und dem Spieler wird ja pHouseKey zu geteilt.

  • einmal bitte testen, einfach mit deinem stock SaveHouses austauschen.



    //Haussystem Nike 2.0
    stock SaveHouse(i)
    {
    new formatHaus[64];
    format(formatHaus,64,"Houses/%d.ini",i);
    if(dini_Exists(formatHaus))
    {
    INI_WriteString("Owner", HouseInfo[i][hOwner]);
    INI_WriteInt("Owned", HouseInfo[i][hOwned]);
    INI_WriteFloat("Entrx", HouseInfo[i][hEntrx]);
    INI_WriteFloat("Entry", HouseInfo[i][hEntry]);
    INI_WriteFloat("Entrz", HouseInfo[i][hEntrz]);
    INI_WriteInt("Price", HouseInfo[i][hPrice]);
    INI_WriteInt("Rentable", HouseInfo[i][hRentable]);
    INI_WriteInt("Rent", HouseInfo[i][hRentable]);
    INI_WriteInt("Intid", HouseInfo[i][hIntid]);
    INI_WriteInt("Locked", HouseInfo[i][hLocked]);
    INI_Save();
    INI_Close();
    }
    return 1;
    }


    ---


    Mit freundlichen Grüßen,
    [GGR]Radio_Bot