Prinzipiell machbar: Ja, natürlich! 
Wie musst du vorgehen?
Ich schreibe dir jetzt ein paar Stichpunkte auf, an denen du dich entlang hangeln kannst, das ist nicht alles was du gefragt hast, aber ich denke wenn du das erst mal gemacht hast, dann bist du ziemlich weit gekommen und weißt dann vielleicht auch schon selbst, wie du den Rest machst, bzw. kannst es von alleine gleich machen, ohne nachzudenken. Wenn nicht, dann gehen wir darauf danach ein, aber das Folgende ist sicherlich erst mal genug Arbeit. Wenn zwischendurch oder zum Ende hin Fragen auftreten, einfach nachfragen.
1) Erstelle eine Tabelle "autos" in der du deine aufgezählten Daten als Spalten anlegst.
2) Erstelle in deinem Code ein enum mit diesen Daten und die Variable, bzw. das enum, dazu.
3) Erstelle eine Lade- und Speicherfunktion wie bei deinen Kassen, das Prinzip ist im Endeffekt das gleiche. Daten auslesen und Daten einlesen. Musst eben die Variablen und die Namen anpassen.
4) Beim Laden erstellst du die Fahrzeuge dann (CreateVehicle).
5) Bei OnPlayerEnterVehicle kannst du dann abfragen, in welches Fahrzeug der Spieler einsteigt, indem du eine Schleife durch deine Fahrzeuge machst, zum Beispiel so:
for(new i=0; i<MAX_FRAKCARS; i++)
{
if(vehicleid == frakCar[i][vehID])
{
//Spieler versucht in das Fraktionsfahrzeug mit der Index ID "i" einzusteigen.
if(frakCar[i][allowedFrak] == SpielerInfo[playerid][Fraktion])
{
//Darf rein
}
else
{
//Darf nicht rein.
TogglePlayerControllable(playerid, false);
TogglePlayerControllable(playerid, true);
}
break;
}
}
Das wichtigste um herauszufinden in welchem Index du arbeitest ist eben die Schleife. Auch wenn du das Fahrzeug abschleppen willst, oder so. Wenn du wissen willst, welches Fraktionsfahrzeug es ist, dann immer diese Schleife verwenden:
for(new i=0; i<MAX_FRAKCARS; i++)
{
if(vehicleid == frakCar[i][vehID])
{
//Fahrzeug ist das frakCar "i".
break; //Den break setzen wir, weil es ja nicht noch ein Fahrzeug mit derselben ID geben kann, daher muss die Schleife nicht weiterlaufen.
}
}
Ansonsten kannst du eigentlich wie bei deinen Kassen vorgehen.
Du musst dir nur überlegen wie du die Fahrzeuge in die Datenbank eintragen lassen willst. Da gibt es zwei Möglichkeiten:
- Entweder du trägst es manuell ein, über dein NaviCat,
- oder du erstellst dir einen Code wie bei dem Laden der Kassen, mit dem du prüfst ob das Fahrzeug schon in der Datenbank steht (gleiches Prinzip) und wenn nicht (ebenfalls gleiches Prinzip) dann erstellst du das Fahrzeug über den switch (wie bei den Kassen) und gibst dort die Werte an. Danach rufst du (wie bei den Kassen) das SaveFrakCars auf, falls ein neues Fahrzeug dazu kam.
Wie du siehst, kannst du dich prinzipiell an den Kassen orientieren, da vieles gleich bzw. ähnlich ist. Natülich musst du etwas Zeit für dieses System einplanen, da es nicht in 5 Minuten geschrieben ist, aber ich denke, dessen bist du dir bewusst.