Haussystem mit SSCANF

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Haussystem mit SSCANF

    Hallo, ich möchte gerne mein Haussystem auf SSCANF umschreiben, da ich damit meine Datensätze einfach schneller laden kann.

    [pwn]
    stock LoadHouse(i)
    {
    new str[128],Geld[25],Query[256],Statustext[25],Text3D[500];
    format(Query,sizeof(Query),"SELECT * FROM _Houses WHERE hID = '%i'",i);
    mysql_query(Query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    mysql_fetch_field("hBesitzer",HausInfo[hBesitzer]);
    mysql_fetch_field("hBeschreibung",HausInfo[i][hBeschreibung]);

    mysql_fetch_field("hEingangX",str);
    HausInfo[i][hEingangX] = floatstr(str);
    mysql_fetch_field("hEingangY",str);
    HausInfo[i][hEingangY] = floatstr(str);
    mysql_fetch_field("hEingangZ",str);
    HausInfo[i][hEingangZ] = floatstr(str);
    mysql_fetch_field("hAusgangX",str);
    HausInfo[i][hAusgangX] = floatstr(str);
    mysql_fetch_field("hAusgangY",str);
    HausInfo[i][hAusgangY] = floatstr(str);
    mysql_fetch_field("hAusgangZ",str);
    HausInfo[i][hAusgangZ] = floatstr(str);

    mysql_fetch_field("hGekauft",str);
    HausInfo[i][hGekauft] = strval(str);
    mysql_fetch_field("hInnenraum",str);
    HausInfo[i][hInnenraum] = strval(str);
    mysql_fetch_field("hPreis",str);
    HausInfo[i][hPreis] = strval(str);
    mysql_fetch_field("hVerschlossen",str);
    HausInfo[i][hVerschlossen] = strval(str);
    mysql_fetch_field("hMiete",str);
    HausInfo[i][hMiete] = strval(str);
    mysql_fetch_field("hKasse",str);
    HausInfo[i][hKasse] = strval(str);
    mysql_fetch_field("hHeal",str);
    HausInfo[i][hHeal] = strval(str);
    mysql_fetch_field("hArmor",str);
    HausInfo[i][hArmor] = strval(str);
    mysql_fetch_field("hLager",str);
    HausInfo[i][hLager] = strval(str);
    mysql_fetch_field("hLebensmittel",str);
    HausInfo[i][hLebensmittel] = strval(str);
    mysql_fetch_field("hMaxZimmer",str);
    HausInfo[i][hMaxZimmer] = strval(str);
    mysql_fetch_field("hZimmer",str);
    HausInfo[i][hZimmer] = strval(str);
    mysql_fetch_field("hMuell",str);
    HausInfo[i][hMuell] = strval(str);
    mysql_free_result();

    HausInfo[i][hAktiviert] = 1;

    HausInfo[i][hPickup] = CreatePickup(1273, 1, HausInfo[i][hEingangX], HausInfo[i][hEingangY], HausInfo[i][hEingangZ]);

    if(HausInfo[i][hVerschlossen] == 1)
    {
    Statustext = "Zugeschlossen";
    }
    else
    {
    Statustext = "Aufgeschlossen";
    }

    F_Geld(Geld,HausInfo[i][hPreis],".");

    if(HausInfo[i][hGekauft] == 1)
    {
    format(Text3D, sizeof(Text3D), ""H_Orange">>> Willkommen am Haus von %s <<<\n"H_Orange"Status: "H_Weis"%s\n"H_Orange"Miete: "H_Weis"%d$\n"H_Orange"Zimmer: "H_Weis"%d von %d\n"H_Orange"Müll: "H_Weis"%d Kilogramm\n"H_Orange"Beschreibung: "H_Weis"%s",HausInfo[i][hBesitzer],Statustext,HausInfo[i][hMiete],HausInfo[i][hZimmer],HausInfo[i][hMaxZimmer],HausInfo[i][hMuell],HausInfo[i][hBeschreibung]);
    HausInfo[i][hLabel] = Create3DTextLabel(Text3D,C_Gruen,HausInfo[i][hEingangX], HausInfo[i][hEingangY], HausInfo[i][hEingangZ]+1.5,18.0,0,0);
    }
    else
    {
    format(Text3D, sizeof(Text3D), ">>> Dieses Haus ist zu verkaufen! <<<\nPreis: %s$",Geld);
    HausInfo[i][hLabel] = Create3DTextLabel(Text3D,C_Gruen,HausInfo[i][hEingangX], HausInfo[i][hEingangY], HausInfo[i][hEingangZ],18.0,0,0);
    }
    Counter++;
    }
    mysql_free_result();
    }[/pwn]

    [pwn]stock SaveHouse(i)
    {
    if(HausInfo[i][hAktiviert] == 1)
    {
    new Query[512];
    format(Query,sizeof(Query),"UPDATE _Houses SET hBesitzer='%s',hBeschreibung='%s',hEingangX='%.2f',hEingangY='%.2f',hEingangZ='%.2f',hAusgangX='%.2f',hAusgangY='%.2f',hAusgangZ='%.2f',hGekauft='%d',hInnenraum='%d',hPreis='%d',hVerschlossen='%d',hMiete='%d',hKasse='%d',hHeal='%d',hArmor='%d',hLager='%d',hLebensmittel='%d',hMaxZimmer='%d',hZimmer='%d',hMuell='%d' WHERE hID='%d'",
    HausInfo[i][hBesitzer],HausInfo[i][hBeschreibung],HausInfo[i][hEingangX],HausInfo[i][hEingangY],HausInfo[i][hEingangZ],
    HausInfo[i][hAusgangX],HausInfo[i][hAusgangY],HausInfo[i][hAusgangZ],HausInfo[i][hGekauft],HausInfo[i][hInnenraum],
    HausInfo[i][hPreis],HausInfo[i][hVerschlossen],HausInfo[i][hMiete],HausInfo[i][hKasse],HausInfo[i][hHeal],HausInfo[i][hArmor],
    HausInfo[i][hLager],HausInfo[i][hLebensmittel],HausInfo[i][hMaxZimmer],HausInfo[i][hZimmer],HausInfo[i][hMuell],i);
    mysql_query(Query);

    }
    else
    {
    new Query[512];
    format(Query,sizeof(Query),"INSERT INTO _Houses (hID) VALUES ('%i')",i);
    mysql_query(Query);
    format(Query,sizeof(Query),"UPDATE _Houses SET hBesitzer='%s',hBeschreibung='%s',hEingangX='%.2f',hEingangY='%.2f',hEingangZ='%.2f',hAusgangX='%.2f',hAusgangY='%.2f',hAusgangZ='%.2f',hGekauft='%i',hInnenraum='%i',hPreis='%i',hVerschlossen='%i',hMiete='%i',hKasse='%i',hHeal='%i',hArmor='%i',hLager='%i',hLebensmittel='%i',hMaxZimmer='%i',hZimmer='%i',hMuell='%i'",
    HausInfo[i][hBesitzer],HausInfo[i][hBeschreibung],HausInfo[i][hEingangX],HausInfo[i][hEingangY],HausInfo[i][hEingangZ],
    HausInfo[i][hAusgangX],HausInfo[i][hAusgangY],HausInfo[i][hAusgangZ],HausInfo[i][hGekauft],HausInfo[i][hInnenraum],
    HausInfo[i][hPreis],HausInfo[i][hVerschlossen],HausInfo[i][hMiete],HausInfo[i][hKasse],HausInfo[i][hHeal],HausInfo[i][hArmor],
    HausInfo[i][hLager],HausInfo[i][hLebensmittel],HausInfo[i][hMaxZimmer],HausInfo[i][hZimmer],HausInfo[i][hMuell]);
    mysql_query(Query);
    }
    mysql_free_result();
    }[/pwn]


    [pwn]enum hStruktur
    {
    hID,
    hAktiviert,
    hGekauft,
    hBesitzer[25],
    hBeschreibung[50],
    Text3D:hLabel,
    hPickup,
    hInnenraum,
    Float:hEingangX,
    Float:hEingangY,
    Float:hEingangZ,
    Float:hAusgangX,
    Float:hAusgangY,
    Float:hAusgangZ,
    hPreis,
    hVerschlossen,
    hMiete,
    hKasse,
    hHeal,
    hArmor,
    hLager,
    hLebensmittel,
    hMaxZimmer,
    hZimmer,
    hMuell
    }[/pwn]


    Ich bedanke mich schon mal für die Hilfe.
    Ich habe mir schon öfftest das SSCANF Tutorial von Maddin angeschaut, komm da aber einfach nicht mit klar..

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von eL_M0NST3R ()