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.
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
ImpoundVehicle(vehicle: number): booleanlocal 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
StoreVehicle(vehicle: number, garage: string): booleanlocal 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
GetStoredVehicles(source: number): GaragedVehicle[]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.
| Nazwa | Rodzaj | Co robi |
|---|---|---|
ai-garages:list | callback klienta | (garageId): pojazdy, które gracz może tam wyjąć. Limit 2 na 2 sekundy. |
ai-garages:takeOut | callback klienta | (garageId, vehicleId): tworzy pojazd w punkcie wyjazdu. |
ai-garages:park | callback klienta | (garageId, netId, props): parkuje pojazd, którym jedzie gracz. |