Haussystem

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
  • Moin Leute,
    bevor ich weiterhin an meinem Haus System Scripte wollte Ich fragen ob man diese so Speichern und Laden kann .




    stock LoadHaus()
    {
    new tmp[100];
    for(new i=0; i<MAX_HAUS; i++)
    {
    format(tmp, 100, "%d", i);
    HausInfo[i][HausID] = mysql_GetInt("haus","HausID","HausID",tmp);
    format(HausInfo[i][HausBesitzer], 64, mysql_GetString("haus","HausBesitzer","HausID",tmp));
    HausInfo[i][HausPreis] = mysql_GetInt("haus","HausPreis","HausID",tmp);
    HausInfo[i][HausBuyPreis] = mysql_GetInt("haus","HausBuyPreis","HausID",tmp);
    HausInfo[i][HausX] = mysql_GetFloat("haus","HausX","HausID",tmp);
    HausInfo[i][HausY] = mysql_GetFloat("haus","HausY","HausID",tmp);
    HausInfo[i][HausZ] = mysql_GetFloat("haus","HausZ","HausID",tmp);
    HausInfo[i][Waffenschrank] = mysql_GetInt("haus","Waffenschrank","HausID",tmp);
    HausInfo[i][Waffe1] = mysql_GetInt("haus","Waffe1","HausID",tmp);
    HausInfo[i][Waffe1Ammo] = mysql_GetInt("haus","Waffe1Ammo","HausID",tmp);
    HausInfo[i][Waffe2] = mysql_GetInt("haus","Waffe2","HausID",tmp);
    HausInfo[i][Waffe2Ammo] = mysql_GetInt("haus","Waffe2Ammo","HausID",tmp);
    HausInfo[i][Waffe3] = mysql_GetInt("haus","Waffe3","HausID",tmp);
    HausInfo[i][Waffe3Ammo] = mysql_GetInt("haus","Waffe3Ammo","HausID",tmp);
    HausInfo[i][Versteck] = mysql_GetInt("haus","Versteck","HausID",tmp);
    HausInfo[i][Hausheal] = mysql_GetInt("haus","HausHeal","HausID",tmp);
    HausInfo[i][Drogen1] = mysql_GetInt("haus","Drogen1","HausID",tmp);
    HausInfo[i][Drogen2] = mysql_GetInt("haus","Drogen2","HausID",tmp);
    HausInfo[i][Drogen3] = mysql_GetInt("haus","Drogen3","HausID",tmp);
    HausInfo[i][Kaufstatus] = mysql_GetInt("haus","Kaufstatus","HausID",tmp);
    }
    return 1;
    }
    stock SaveHaus()
    {
    new tmp[100];
    for(new i=0; i<MAX_HAUS; i++)
    {
    format(tmp, 100, "%d", i);
    mysql_SetInt("haus","HausID",HausInfo[i][HausID],"HausID",tmp);
    mysql_SetString("haus","HausBesitzer",HausInfo[i][HausBesitzer],"HausID",tmp);
    mysql_SetInt("haus","HausPreis",HausInfo[i][HausPreis],"HausID",tmp);
    mysql_SetInt("haus","HausBuyPreis",HausInfo[i][HausBuyPreis],"HausID",tmp);
    mysql_SetFloat("haus","HausX",HausInfo[i][HausX],"HausID",tmp);
    mysql_SetFloat("haus","HausY",HausInfo[i][HausY],"HausID",tmp);
    mysql_SetFloat("haus","HausZ",HausInfo[i][HausZ],"HausID",tmp);
    mysql_SetInt("haus","Waffenschrank",HausInfo[i][Waffenschrank],"HausID",tmp);
    mysql_SetInt("haus","Waffe1",HausInfo[i][Waffe1],"HausID",tmp);
    mysql_SetInt("haus","Waffe1Ammo",HausInfo[i][Waffe1Ammo],"HausID",tmp);
    mysql_SetInt("haus","Waffe2",HausInfo[i][Waffe2],"HausID",tmp);
    mysql_SetInt("haus","Waffe2Ammo",HausInfo[i][Waffe2Ammo],"HausID",tmp);
    mysql_SetInt("haus","Waffe3",HausInfo[i][Waffe3],"HausID",tmp);
    mysql_SetInt("haus","Waffe3Ammo",HausInfo[i][Waffe3Ammo],"HausID",tmp);
    mysql_SetInt("haus","Versteck",HausInfo[i][Versteck],"HausID",tmp);
    mysql_SetInt("haus","Hausheal",HausInfo[i][Hausheal],"HausID",tmp);
    mysql_SetInt("haus","Drogen1",HausInfo[i][Drogen1],"HausID",tmp);
    mysql_SetInt("haus","Drogen2",HausInfo[i][Drogen2],"HausID",tmp);
    mysql_SetInt("haus","Drogen3",HausInfo[i][Drogen3],"HausID",tmp);
    mysql_SetInt("haus","Kaufstatus",HausInfo[i][Kaufstatus],"HausID",tmp);
    }
    return 1;
    }


  • Einen deutschen? Nicht, dass ich wüsste. Du kannst dir aber gerne mein Tutorial anschauen, das kannst du auch für Häuser verwenden: [ SCRIPTING ] [jTuT] Fraktions-Fahrzeug-System mit MySQL R39-2
    Spielt ja im Endeffekt keine Rolle, ob du jetzt Haus oder Fahrzeug schreibst.



    Habe nun geschaut und überlegt wie ich es anstellen könnte aber komme nicht auf einen tricher könntest du mir dafür ein ersatz beispiel geben ?


    stock mysql_CheckAccount(playerid)
    {
    new Query[128],Name[MAX_PLAYER_NAME],count;
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name, Name);
    format(Query, sizeof(Query), "SELECT * FROM `accounts` WHERE `Name` = '%s'", Name);
    mysql_query(Query);
    mysql_store_result();
    count = mysql_num_rows();
    mysql_free_result();
    return count;
    }
    stock CreateAccount(playerid, pass[])
    {
    new query[256],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name,Name);
    mysql_real_escape_string(pass,pass);
    format(query, sizeof(query), "INSERT INTO `accounts` (`Name`, `Passwort`) VALUES ('%s', '%s')", Name, pass);
    mysql_query(query);
    return true;
    }
    stock mysql_ReturnPasswort(Name[])
    {
    new query[130], Get[130];
    mysql_real_escape_string(Name, Name);
    format(query, 128, "SELECT `passwort` FROM `accounts` WHERE `Name` = '%s'", Name);
    mysql_query(query);
    mysql_store_result();
    mysql_fetch_row(Get);
    mysql_free_result();
    return Get;
    }

  • Darum geht es ja, diese Funktionen nicht mehr zu nutzen, auf Grund der extrem schlechten Performance. Wenn dir das egal ist, dann kannst du diese natürlich mit dem alten Plugin verwenden, aber es kann eben sein, dass der Server ein paar Sekunden braucht, bis er startet.


    Diese Funktionen kann man auch (zumindest die, die einen Wert zurück geben) nicht sinnvoll mit dem neuen Plugin erstellen, außer man nutzt die alten Funktionen, was keinen Vorteil bringt.



    Du hast 2 Möglichkeiten.
    1) In das neue Plugin einarbeiten.
    2) Das alte Plugin wie gehabt zu verwenden, geht ja, ist nur langsam.