AI Core
Araçlarai-garages

Geliştiriciler için ai-garages

ai-garages’ın server export’ları ve kullandıkları yapılar.

Kendi script’inden lib’in garages katmanını kullan (server): garages.impound(vehicle, by?), garages.store(vehicle, garage?, by?), garages.open(source, garage?) ve garages.stored(source). Server hangi garaj script’ini çalıştırıyorsa onunla çalışır. Aşağıdaki export’lar, aktif garaj script’i ai-garages iken katmanın çağırdıklarıdır. ai-garages listesini uzaktan açamaz, bu yüzden onunla garages.open false döner.

@aicore-fivem/shared içinde (garages.ts) AiGaragesServerExports olarak tiplenmiştir. Üçü de senkrondur.

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

Server export’ları

ImpoundVehicle

Sahipli bir aracı çekilmiş araç otoparkına gönderir: durumunu (yakıt, motor, kaporta) kaydeder, entity’yi siler ve durumunu impound yapar. Sahibi aracı ücret karşılığında bir çekilmiş araç otoparkından geri alır.

Taraf: Server · Bekler: hayır

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

Parametreler

Prop

Type

Dönüş değeri

Otoparka çekildiyse true. Entity yoksa ya da ai-vehicles’ın sahipli bir aracı değilse false; o durumda onu kendin sil.

Örnek

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

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

export function towAway(vehicle: number): void {
  if (!garages.ImpoundVehicle(vehicle)) DeleteEntity(vehicle); // sahipli değil: sadece kaldır
}

StoreVehicle

Sahipli bir aracı paneldeki garajlardan birine park eder: durumunu kaydeder, entity’yi siler, durumunu garage yapar.

Taraf: Server · Bekler: hayır

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

Parametreler

Prop

Type

Dönüş değeri

Park edildiyse true. Sahipli olmayan bir araç, var olmayan bir garaj id’si ya da çekilmiş araç otoparkı için false.

GetStoredVehicles

Bir oyuncunun karakterinin dışarıda olmayan araçları: bir garajda park halinde ya da çekilmiş araç otoparkında bekleyenler. Filo araçları dahil değildir.

Taraf: Server · Bekler: hayır

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

Dönüş değeri

GaragedVehicle dizisi. Oyuncunun yüklü bir karakteri yoksa boştur.

GaragedVehicle

Prop

Type

Örnek

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

Event’ler

ai-garages’ın callback’leri iç kullanım içindir (kendi client’ından kendi server’ına). Başka script’lerden çağırma.

AdTürNe yapar
ai-garages:listclient callback’i(garageId): oyuncunun orada çıkarabileceği araçlar. 2 saniyede en fazla 2 kez.
ai-garages:takeOutclient callback’i(garageId, vehicleId): aracı çıkış noktasında spawn eder.
ai-garages:parkclient callback’i(garageId, netId, props): oyuncunun sürdüğü aracı park eder.

Bu sayfada