AI Core
Pojazdyai-garages

ai-garages dla deweloperów

Eksporty serwera ai-garages i kształty, których używają.

Z własnego skryptu używaj warstwy garages z biblioteki (serwer): garages.impound(vehicle, by?), garages.store(vehicle, garage?, by?), garages.open(source, garage?) i garages.stored(source). Działa z każdym skryptem garaży, którego używa serwer. Poniższe eksporty to to, co wywołuje ta warstwa, gdy ai-garages jest aktywnym skryptem garaży. ai-garages nie potrafi otworzyć swojej listy z daleka, więc garages.open odpowiada z nim false.

Typowane jako AiGaragesServerExports w @aicore-fivem/shared (garages.ts). Wszystkie trzy są synchroniczne.

TypeScript
import { resourceExport } from "@aicore-fivem/lib/server";
const garages = resourceExport("ai-garages");

Eksporty serwera

ImpoundVehicle

Wysyła posiadany pojazd na parking policyjny: zapisuje jego stan (paliwo, silnik, karoseria), usuwa encję i ustawia jego stan na impound. Właściciel odbiera go na parkingu policyjnym za opłatą.

Strona: serwer · Czeka: nie

Sygnatura
ImpoundVehicle(vehicle: number): boolean
Lua
local ok = exports['ai-garages']:ImpoundVehicle(vehicle)

Parametry

Prop

Type

Zwraca

true, gdy pojazd został odholowany. false, gdy encja nie istnieje albo nie jest posiadanym pojazdem z ai-vehicles; wtedy usuń ją sam.

Przykład

import { resourceExport } from "@aicore-fivem/lib/server";

const garages = resourceExport("ai-garages");

export function towAway(vehicle: number): void {
  if (!garages.ImpoundVehicle(vehicle)) DeleteEntity(vehicle); // nieposiadany: po prostu go usuń
}

StoreVehicle

Parkuje posiadany pojazd w jednym z garaży z panelu: zapisuje jego stan, usuwa encję, ustawia jego stan na garage.

Strona: serwer · Czeka: nie

Sygnatura
StoreVehicle(vehicle: number, garage: string): boolean
Lua
local ok = exports['ai-garages']:StoreVehicle(vehicle, garage)

Parametry

Prop

Type

Zwraca

true, gdy pojazd został zaparkowany. false dla pojazdu, który nie jest posiadany, nieistniejącego ID garażu lub parkingu policyjnego.

GetStoredVehicles

Pojazdy postaci gracza, które nie są wyjęte: zaparkowane w garażu lub czekające na parkingu policyjnym. Pojazdy flot nie są uwzględniane.

Strona: serwer · Czeka: nie

Sygnatura
GetStoredVehicles(source: number): GaragedVehicle[]
Lua
local list = exports['ai-garages']:GetStoredVehicles(source)

Zwraca

Tablica GaragedVehicle. Pusta, gdy gracz nie ma wczytanej postaci.

GaragedVehicle

Prop

Type

Przykład

const list = garages.GetStoredVehicles(source);
const impounded = list.filter((v) => v.impounded).map((v) => v.plate);
console.log(`impounded: ${impounded.join(", ") || "none"}`);

Zdarzenia

Callbacki ai-garages są wewnętrzne (od jego klienta do jego serwera). Nie wywołuj ich z innych skryptów.

NazwaRodzajCo robi
ai-garages:listcallback klienta(garageId): pojazdy, które gracz może tam wyjąć. Limit 2 na 2 sekundy.
ai-garages:takeOutcallback klienta(garageId, vehicleId): tworzy pojazd w punkcie wyjazdu.
ai-garages:parkcallback klienta(garageId, netId, props): parkuje pojazd, którym jedzie gracz.

Na tej stronie