LAFS - Automatische Fahrschule (Auto,Bike,LKW) inkl. Speicherung (MySQL || SQLite)

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
  • Hey Leute,


    tja heute möchte ich ein weiteres Filterscript meinerseits vorstellen.
    Es beinhaltet, wie man vielleicht schon in der Überschrift erkennen kann, ein automatisches Fahrschulsystem, bei dem man zwischen 3 Scheinarten wählen kann:
    Auto-,Bike- & LKW-Schein. Der zugehörige "Punkt" bzw. das zugehörige Pickup,um eine von diesen Prüfungen zu starten, befindet sich an der Fahrschule in San Fierro.
    Man merkt vielleicht, dass die Prüfungen kein Geld kosten, das ist absichtlich so gemacht, da mir kein angemessener Preis einfiel, oder wohl eher auch die Lust, da das System eigentlich nur für die Qualifikation eines Skripting Battle Turniers gedacht war, deswegen die auch verhältnismäßig wenigen Einstellmöglichkeiten, was hier wirklich zu berücksichtigen ist :D.
    Aber dies wurde abgesagt, und damit das ganze hier nicht rumgammelt, veröffentliche ich es einfach mal hier.
    Nachdem sich dann der Dialog am Annahmepunkt öffnet, kann man wie schon gesagt zwischen den Arten wählen.
    Anschließend muss man mit dem entsprechenden Fahrzeug eine Route abfahren (ist immer gleich, egal welcher Schein, Grund siehe obige Erklärung :D) um zu bestehen.
    Natürlich darf man dabei das Fahrzeug nicht zu arg beschädigen oder gar kaputt machen (oder verlassen), sonst fällt man durch die Prüfung.
    Wenn man ohne entsprechenden Schein auf ein Fahrzeug steigt wird man nicht rausgeworfen sondern "betrunken gemacht" (man kann schwieriger richtig fahren).
    Zu beachten ist hierbei auch, dass die Scheine selbständig vom Filterscript gespeichert werden & ihr euch dabei keinen Kopf um die Speicherung machen müsst.
    Die Speicherungsmöglichkeiten stellt ihr im Filterscript um, in dem ihr das "Define" von SAVE auf 1 für MySQL (WICHTIG: Ihr braucht mindestens die R7 Version von BlueG) oder auf 2 setzt für
    SQLite (standardmäßig mitgeliefert, keine weiteren Includes außer die SA-MP Api von Nöten).
    Wenn ihr MySQL wählt, müsst ihr natürlich im Script noch die Zugangsdaten individuell auf eure Bedürfnisse einstellen.


    Download:
    Pastebin: Klick mich!
    Komplettpaket inkl. MySQL Plugin: Klick mich!


    Installation:
    1. la_fs.amx in Filterscripts Ordner verschieben
    2. Server.CFG anpassen
    3. Server starten -> Fertig!
    4. Bei Bedarf anliegende la_fs.pwn editieren & selbst kompilieren.


    Ich weiß, man hätte einige Dinge ausführlicher (z.B mehrere Routen) machen können, jedoch war das Filterscript ja eigentlich nur eine Art Qualifikation & deshalb wurde nicht so viel Wert auf Details gelegt, eher auf Funktionalität & Stabilität. Ihr könnt das natürlich auch gerne umschreiben & auf eure Bedürfnisse anpassen, ist ja eher eine Art "Basis" für ein ausführliches & detailliertes Fahrschulsystem.


    Hier sind ein paar Bilder zu finden:


    LG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

    3 Mal editiert, zuletzt von L0g4n ()

  • str = "CREATE TABLE IF NOT EXISTS `"TABLE"` ("; //Formatieren des Strings für die Tabellenerstellung bei Nichtexistenz
    strcat(str,"`ID` int(3) NOT NULL AUTO_INCREMENT,");
    strcat(str,"`Name` varchar(24) COLLATE latin1_german1_ci NOT NULL,");
    strcat(str,"`Auto` tinyint(2) NOT NULL DEFAULT '0',");
    strcat(str,"`Bike` tinyint(2) NOT NULL DEFAULT '0',");
    strcat(str,"`LKW` tinyint(2) NOT NULL DEFAULT '0',");
    strcat(str,"PRIMARY KEY (`ID`)");
    strcat(str,") ENGINE=MyISAM DEFAULT CHARSET=latin1");
    strcat(str," COLLATE=latin1_german1_ci AUTO_INCREMENT=1;");
    Sinn?
    Sowas macht man ohne strcat da es nicht zu lang ist um es direkt in den mysql... reinzuschreiben
    Unnötiger Headspace verbrauch ist das
    #elseif SAVE == 2
    Wo ist der Fehler?


    Der rest ist soweit in Ordnung

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


  • Das bisschen Heapspace :rolleyes: . Es heißt Heapspace und nicht Headspace.
    Du hast zwar Recht, jedoch geht da die Übersichtlichkeit dann drauf und die ist immer noch das Wichtigste.
    Und zu deinem 2.Punkt: Wo soll da bitte der Fehler sein ?


    Edit: Downloadlink geupdated


    LG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.