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..
[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 ()