Fahrzeugeai-vehiclesales
ai-vehiclesales für Entwickler
Wie ai-vehiclesales angebotene Fahrzeuge hält, seine Tabellen und seine internen Events.
ai-vehiclesales hat keine Exports. Was andere Skripte wissen müssen, ist, wie ein angebotenes Fahrzeug von außen aussieht.
Angebotene Fahrzeuge in ai-vehicles
Ein angebotenes Fahrzeug bleibt in ai-vehicles mit derselben ID, demselben Kennzeichen, Aussehen und Kofferraum. Solange es angeboten wird:
- ist sein Besitzer
{ type: "resource", id: "ai-vehiclesales" }; - ist sein Status
"garage"ohne Garage (garage: null), sodass es in keiner Garage erscheint; - hat der Verkäufer keinen Schlüssel dafür.
Kaufen oder Zurücknehmen setzt den Besitzer mit SetOwner auf den Charakter und spawnt es an der Auslieferungsstelle des Platzes.
import { resourceExport } from "@aicore-fivem/lib/server";
const vehicles = resourceExport("ai-vehicles");
// Steht dieses Kennzeichen gerade auf einem Gebrauchtwagenplatz zum Verkauf?
export function isListed(plate: string): boolean {
const vehicle = vehicles.GetVehicle(plate);
return vehicle?.owner.type === "resource" && vehicle.owner.id === "ai-vehiclesales";
}Tabellen
| Tabelle | Was sie enthält |
|---|---|
ai_vehiclesales_listings | Eine Zeile pro angebotenem Fahrzeug (eindeutige vehicle_id): Platz, Verkäufer, Preis, Beschreibung. |
ai_vehiclesales_payouts | Geld, das auf Verkäufer wartet, die offline waren, als ihr Fahrzeug verkauft wurde. Wird beim nächsten Einloggen ausgezahlt und gelöscht. |
Events
Alle Events von ai-vehiclesales sind intern (sein Client und sein Server); rufe sie nicht aus anderen Skripten auf. Angebote erreichen Clients als Snapshot und danach nur als Änderungen (Deltas), und nur Spieler auf dem Platz oder mit offenem Bildschirm.
| Name | Art | Was es macht |
|---|---|---|
ai-vehiclesales:watch / unwatch | Callback / Client-Event | Startet oder stoppt die Updates der geparkten Autos beim Betreten oder Verlassen eines Platzes. |
ai-vehiclesales:display | Server an Client | (lotId, puts, removes): Geparkte Angebote haben sich geändert. |
ai-vehiclesales:browse / unbrowse | Callback / Client-Event | Startet oder stoppt die Bildschirm-Updates. |
ai-vehiclesales:listings | Server an Client | (lotId, puts, removes): Angebote des offenen Bildschirms haben sich geändert. |
ai-vehiclesales:details | Callback | (lotId, listingId): die Beschreibung und das Aussehen eines Angebots. |
ai-vehiclesales:list | Callback | (lotId, netId, price, description): das Fahrzeug anbieten, das der Spieler fährt. |
ai-vehiclesales:quote / sellBack | Callback | (lotId, netId): der Preis des Händlers und der Verkauf an den Händler. |
ai-vehiclesales:buy / takeBack | Callback | (lotId, listingId): kaufen oder das eigene Angebot zurücknehmen. |
ai-vehiclesales:testDrive / endTestDrive | Callback | Eine Probefahrt starten oder beenden. |
ai-vehiclesales:testDriveEnded | Server an Client | (lotId): Die Probefahrt ist beendet; der Spieler kehrt zum Platz zurück. |