Hallo Leute.
Ich habe ein kleines Problem mit MySQL, undzwar hängt sich mein Server immer auf, sobald ich folgenden Befehl im Spiel eintippe. (Es wird alles ausgeführt, habs schon selber debuggt.)
[pwn]
forward SaveHouses();
public SaveHouses()
{
new str[15];
new house = 1;
while(house < MAX_HOUSES)
{
format(str, sizeof(str), "%d", house);
mysql_SetFloat("Houses", "EnterX", Haus[house][EnterX], "ID", str);
mysql_SetFloat("Houses", "EnterY", Haus[house][EnterY], "ID", str);
mysql_SetFloat("Houses", "EnterZ", Haus[house][EnterZ], "ID", str);
mysql_SetFloat("Houses", "ExitX", Haus[house][ExitX], "ID", str);
mysql_SetFloat("Houses", "ExitY", Haus[house][ExitY], "ID", str);
mysql_SetFloat("Houses", "ExitZ", Haus[house][ExitZ], "ID", str);
mysql_SetString("Houses", "Besitzer", Haus[house][hBesitzer], "ID", str);
mysql_SetString("Houses", "Name", Haus[house][hName], "ID", str);
mysql_SetInt("Houses", "Preis", Haus[house][hPreis], "ID", str);
mysql_SetInt("Houses", "Mieten", Haus[house][hMieten], "ID", str);
mysql_SetInt("Houses", "Lock", Haus[house][hLock], "ID", str);
mysql_SetInt("Houses", "MietPreis", Haus[house][hMietPreis], "ID", str);
mysql_SetInt("Houses", "Interior", Haus[house][hInterior], "ID", str);
Delete3DTextLabel(Haus[house][hText]);
DestroyPickup(Haus[house][hPickup]);
}
return 1;
}
forward LoadHouses();
public LoadHouses()
{
new str[15], str2[128];
new house = 1;
while(house < MAX_HOUSES)
{
format(str, sizeof(str), "%d", house);
Haus[house][hID] = mysql_GetInt("Houses", "ID", "ID", str);
Haus[house][EnterX] = mysql_GetFloat("Houses", "EnterX", "ID", str);
Haus[house][EnterY] = mysql_GetFloat("Houses", "EnterY", "ID", str);
Haus[house][EnterZ] = mysql_GetFloat("Houses", "EnterZ", "ID", str);
Haus[house][ExitX] = mysql_GetFloat("Houses", "ExitX", "ID", str);
Haus[house][ExitY] = mysql_GetFloat("Houses", "ExitY", "ID", str);
Haus[house][ExitZ] = mysql_GetFloat("Houses", "ExitZ", "ID", str);
format(Haus[house][hBesitzer], MAX_PLAYER_NAME, mysql_GetString("Houses", "Besitzer", "ID", str));
format(Haus[house][hName], MAX_PLAYER_NAME, mysql_GetString("Houses", "Name", "ID", str));
Haus[house][hPreis] = mysql_GetInt("Houses", "Preis", "ID", str);
Haus[house][hMieten] = mysql_GetInt("Houses", "Mieten", "ID", str);
Haus[house][hLock] = mysql_GetInt("Houses", "Lock", "ID", str);
Haus[house][hMietPreis] = mysql_GetInt("Houses", "MietPreis", "ID", str);
Haus[house][hInterior] = mysql_GetInt("Houses", "Interior", "ID", str);
if(strcmp(Haus[house][hBesitzer], "Niemand", true) == 0)
{
format(str2, sizeof(str2), "Dieses Haus gehört: Niemand\n \nPreis: %i$\nBeschreibung: %s\n \nTippe /buyhouse zum kaufen", Haus[house][hPreis], Haus[house][hName]);
}
else
{
if(Haus[house][hMieten] == 0)
{
format(str2, sizeof(str2), "Dieses Haus gehört: %s.\n \nBeschreibung: %s", Haus[house][hBesitzer], Haus[house][hName]);
}
else if(Haus[house][hMieten] == 1)
{
format(str2, sizeof(str2), "Dieses Haus gehört: %s.\n \nBeschreibung: %s\nMiete: %i$", Haus[house][hBesitzer], Haus[house][hPreis], Haus[house][hMietPreis]);
}
}
Haus[house][hText] = Create3DTextLabel(str2, COLOR_PROP, Haus[house][EnterX], Haus[house][EnterY], Haus[house][EnterZ],10.0,0,0);
Haus[house][hPickup] = CreatePickup(1239, 1, Haus[house][EnterX], Haus[house][EnterY], Haus[house][EnterZ],0);
printf("House-Name: %s", Haus[house][hName]);
house++;
}
return 1;
}[/pwn]
Achja, PS: Die Häuser werden bei OnGameModeInit geladen und bei OnGameModeExit gespeichert.
Ich habe ein kleines Problem mit MySQL, undzwar hängt sich mein Server immer auf, sobald ich folgenden Befehl im Spiel eintippe. (Es wird alles ausgeführt, habs schon selber debuggt.)
[pwn]
forward SaveHouses();
public SaveHouses()
{
new str[15];
new house = 1;
while(house < MAX_HOUSES)
{
format(str, sizeof(str), "%d", house);
mysql_SetFloat("Houses", "EnterX", Haus[house][EnterX], "ID", str);
mysql_SetFloat("Houses", "EnterY", Haus[house][EnterY], "ID", str);
mysql_SetFloat("Houses", "EnterZ", Haus[house][EnterZ], "ID", str);
mysql_SetFloat("Houses", "ExitX", Haus[house][ExitX], "ID", str);
mysql_SetFloat("Houses", "ExitY", Haus[house][ExitY], "ID", str);
mysql_SetFloat("Houses", "ExitZ", Haus[house][ExitZ], "ID", str);
mysql_SetString("Houses", "Besitzer", Haus[house][hBesitzer], "ID", str);
mysql_SetString("Houses", "Name", Haus[house][hName], "ID", str);
mysql_SetInt("Houses", "Preis", Haus[house][hPreis], "ID", str);
mysql_SetInt("Houses", "Mieten", Haus[house][hMieten], "ID", str);
mysql_SetInt("Houses", "Lock", Haus[house][hLock], "ID", str);
mysql_SetInt("Houses", "MietPreis", Haus[house][hMietPreis], "ID", str);
mysql_SetInt("Houses", "Interior", Haus[house][hInterior], "ID", str);
Delete3DTextLabel(Haus[house][hText]);
DestroyPickup(Haus[house][hPickup]);
}
return 1;
}
forward LoadHouses();
public LoadHouses()
{
new str[15], str2[128];
new house = 1;
while(house < MAX_HOUSES)
{
format(str, sizeof(str), "%d", house);
Haus[house][hID] = mysql_GetInt("Houses", "ID", "ID", str);
Haus[house][EnterX] = mysql_GetFloat("Houses", "EnterX", "ID", str);
Haus[house][EnterY] = mysql_GetFloat("Houses", "EnterY", "ID", str);
Haus[house][EnterZ] = mysql_GetFloat("Houses", "EnterZ", "ID", str);
Haus[house][ExitX] = mysql_GetFloat("Houses", "ExitX", "ID", str);
Haus[house][ExitY] = mysql_GetFloat("Houses", "ExitY", "ID", str);
Haus[house][ExitZ] = mysql_GetFloat("Houses", "ExitZ", "ID", str);
format(Haus[house][hBesitzer], MAX_PLAYER_NAME, mysql_GetString("Houses", "Besitzer", "ID", str));
format(Haus[house][hName], MAX_PLAYER_NAME, mysql_GetString("Houses", "Name", "ID", str));
Haus[house][hPreis] = mysql_GetInt("Houses", "Preis", "ID", str);
Haus[house][hMieten] = mysql_GetInt("Houses", "Mieten", "ID", str);
Haus[house][hLock] = mysql_GetInt("Houses", "Lock", "ID", str);
Haus[house][hMietPreis] = mysql_GetInt("Houses", "MietPreis", "ID", str);
Haus[house][hInterior] = mysql_GetInt("Houses", "Interior", "ID", str);
if(strcmp(Haus[house][hBesitzer], "Niemand", true) == 0)
{
format(str2, sizeof(str2), "Dieses Haus gehört: Niemand\n \nPreis: %i$\nBeschreibung: %s\n \nTippe /buyhouse zum kaufen", Haus[house][hPreis], Haus[house][hName]);
}
else
{
if(Haus[house][hMieten] == 0)
{
format(str2, sizeof(str2), "Dieses Haus gehört: %s.\n \nBeschreibung: %s", Haus[house][hBesitzer], Haus[house][hName]);
}
else if(Haus[house][hMieten] == 1)
{
format(str2, sizeof(str2), "Dieses Haus gehört: %s.\n \nBeschreibung: %s\nMiete: %i$", Haus[house][hBesitzer], Haus[house][hPreis], Haus[house][hMietPreis]);
}
}
Haus[house][hText] = Create3DTextLabel(str2, COLOR_PROP, Haus[house][EnterX], Haus[house][EnterY], Haus[house][EnterZ],10.0,0,0);
Haus[house][hPickup] = CreatePickup(1239, 1, Haus[house][EnterX], Haus[house][EnterY], Haus[house][EnterZ],0);
printf("House-Name: %s", Haus[house][hName]);
house++;
}
return 1;
}[/pwn]
Achja, PS: Die Häuser werden bei OnGameModeInit geladen und bei OnGameModeExit gespeichert.

Mit freundlichen Grüßen, Ap0llinaris.
[Blockierte Grafik: http://img6.imagebanana.com/img/lb4rwabb/newsig111.png]
[Blockierte Grafik: http://img6.imagebanana.com/img/lb4rwabb/newsig111.png]