AI Core
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

TabelleWas sie enthält
ai_vehiclesales_listingsEine Zeile pro angebotenem Fahrzeug (eindeutige vehicle_id): Platz, Verkäufer, Preis, Beschreibung.
ai_vehiclesales_payoutsGeld, 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.

NameArtWas es macht
ai-vehiclesales:watch / unwatchCallback / Client-EventStartet oder stoppt die Updates der geparkten Autos beim Betreten oder Verlassen eines Platzes.
ai-vehiclesales:displayServer an Client(lotId, puts, removes): Geparkte Angebote haben sich geändert.
ai-vehiclesales:browse / unbrowseCallback / Client-EventStartet oder stoppt die Bildschirm-Updates.
ai-vehiclesales:listingsServer an Client(lotId, puts, removes): Angebote des offenen Bildschirms haben sich geändert.
ai-vehiclesales:detailsCallback(lotId, listingId): die Beschreibung und das Aussehen eines Angebots.
ai-vehiclesales:listCallback(lotId, netId, price, description): das Fahrzeug anbieten, das der Spieler fährt.
ai-vehiclesales:quote / sellBackCallback(lotId, netId): der Preis des Händlers und der Verkauf an den Händler.
ai-vehiclesales:buy / takeBackCallback(lotId, listingId): kaufen oder das eigene Angebot zurücknehmen.
ai-vehiclesales:testDrive / endTestDriveCallbackEine Probefahrt starten oder beenden.
ai-vehiclesales:testDriveEndedServer an Client(lotId): Die Probefahrt ist beendet; der Spieler kehrt zum Platz zurück.

Auf dieser Seite