MySQL Haus System mit Basis-EinrichtungsSystem

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

  • Hi Leute,


    Wie der Titel schon zeigt release ich heute mein MySQL Haussystem, welches leider in meinem Projekt GTR keine Verwendung mehr findet, da das Projekt beendet wurde. Der Mapeditor funktioniert soweit ganz ordentlich ingame, allerdings fehlt dafür eine Art Möbelhaus, um Gegenstände kaufen zu können. Dazu war noch ein Dialog geplant, in welchem man die Objekte innerhalb eines Hauses "hiden" oder auspacken können sollte, doch all dies wurde nichtmehr gemacht. Für dieses Script wird ein MySQL Account System benötigt, in welchem dann gespeichert wird, ob und in welchem Haus ein Spieler spawnen soll.
    Folgende CMDs sind enthalten:



    /spawnchange //-> Wechselt den Spawnpunkt, allerdings durch letztere Änderungen unwirksam. Damit ein Spieler an seinem Haus spawnt, ruft das public "OnPlayerHausSpawn" auf.
    /buyhouse //-> Selbsterklärend
    /hlock //-> Schließt ein Haus ab oder auf
    /edit //-> Startet den Editiermodus für Inneneinrichtung
    /endedit //-> Beendet den Editiermodus
    /addobj //-> [RCON ONLY] Addet ein Objekt der angegebenen ID in das aktuell betretene Haus
    /ch oder /confighouse //-> Öffnet den Hauseinstellungen-Dialog, in welchem die Miete, die Hauskasse und die Farbe des 3DTextes verwaltet werden kann
    /sethousepos //-> Setzt die Hausposition der angegebenen ID um (Eingangssymbol)
    /sethouseint //-> Ändert das Interior eine Hauses in der Nähe auf die angegebene ID
    /createhouse //-> [RCON ONLY] Erstellt ein neues Haus an der aktuellen Position zum angegebenen Preis & InteriorID
    /rent //-> Mietet ein Zimmer in einem nahen Haus
    /unrent //-> Beendet die Miete in einem nahen Haus


    Um die Mieten abzurechnen, muss das Public "PayDayPart" aufgerufen werden.



    Das HausSpawn-System funktioniert wiefolgt: Man spawnt an dem Haus, in dem man als letztes war und entweder der Eigentümer, oder ein Mieter ist.
    Gegebenenfalls beinhaltet das Script noch Befehle/Objekte, die aus Testgründen da rein gekommen sind. Diese sind bitte zu entschuldigen und bei Bedarf simplerweise zu entfernen.
    Weitere Fragen? Stellt sie einfach hier im Thread. Alle MySQL Tables liegen im Script bei
    Letztendlich ist das Script ansich vollständig, nur fehlt eben ein Teil für den Einrichtungseditor, das heißt man kann das System schon auf einen Server verwenden, sollte allerdings die Mapeditorcommands deaktivieren
    Download nur per PasteBin


    --DL aufgrund Wiederverwendung entfernt. Leute, die das Script gedownloadet haben, dürfen es natürlich trotzdem noch nutzen, aber bitte nicht weitergeben.--




    Mfg,


    RG

    Einmal editiert, zuletzt von RG_ ()

  • Nicht schlecht aber eines Versteh ich nicht
    Du hast schon das sscanf2 Plugin in verwendung aber arbeitest nicht damit um was zu laden..
    Darf man fragen wiso?


    CaptainKevin das ist das von Strickenkid


    Allgemein gobt es 9/10 Punkten
    1 Pluspunkt gab es von mir wegen den MySQL Plugin ;)

    All in all it's just another brick in the wall

  • PayDayPart ist ein Public, welches den Teil aus dem Haussystem des PayDays darstellt. Wird dies mit dem Parameter der betroffenen SpielerID aufgerufen, so wird diesem die Miete für seine einzelnen Zimmer abgezogen


    Und Beavis
    Das Ladesystem wurde als erstes umgesetzt, doch als dann im HauptGM auch sscanf zum Einsatz kam, nahm ich das eben auch für die Commands her. Dagegen wollte ich das Laden aber nicht auch umbauen, da es ja seinen Zweck erfüllt hat. Genauso kann man auch fragen, warum ich jedes einzelne Haus logge und so die ganze Log vollspame, das hat eben Testgründe gehabt und ist damit verbunden, dass dieses Script niemals für einen Release geplant war. Somit ist es unsauber und soll nur funktionieren.

  • Die Tabellen musst du einfach in deine MySQL Datenbank (Bevorzugt via PHPMyAdmin) importieren.
    Der Inhalt von OnFilterScriptInit/-Exit muss jeweils, wie es der Name bereits verrät, in OnGameModeInit/-Exit