AI Core
Vehículosai-garages

ai-garages para desarrolladores

Los exports de servidor de ai-garages y las formas que usan.

Desde tu propio script, usa la capa garages de la lib (servidor): garages.impound(vehicle, by?), garages.store(vehicle, garage?, by?), garages.open(source, garage?) y garages.stored(source). Funciona con el script de garajes que use el servidor. Los exports de abajo son los que llama la capa mientras ai-garages es el script de garajes activo. ai-garages no puede abrir su lista desde lejos, así que garages.open responde false con él.

Tipados como AiGaragesServerExports en @aicore-fivem/shared (garages.ts). Los tres son síncronos.

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

Exports de servidor

ImpoundVehicle

Envía un vehículo en propiedad al depósito: guarda su estado (combustible, motor, carrocería), borra la entidad y pone su estado en impound. El dueño lo recupera en un depósito pagando la tarifa.

Lado: Servidor · Espera: no

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

Parámetros

Prop

Type

Devuelve

true cuando se envió al depósito. false cuando la entidad no existe o no es un vehículo en propiedad de ai-vehicles; bórralo tú entonces.

Ejemplo

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

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

export function towAway(vehicle: number): void {
  if (!garages.ImpoundVehicle(vehicle)) DeleteEntity(vehicle); // sin dueño: simplemente quitarlo
}

StoreVehicle

Aparca un vehículo en propiedad en uno de los garajes del panel: guarda su estado, borra la entidad y pone su estado en garage.

Lado: Servidor · Espera: no

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

Parámetros

Prop

Type

Devuelve

true cuando se guardó. false para un vehículo sin dueño, un id de garaje que no existe o un depósito.

GetStoredVehicles

Los vehículos del personaje de un jugador que no están fuera: aparcados en un garaje o esperando en el depósito. Los vehículos de flota no se incluyen.

Lado: Servidor · Espera: no

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

Devuelve

Un array de GaragedVehicle. Vacío cuando el jugador no tiene personaje cargado.

GaragedVehicle

Prop

Type

Ejemplo

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

Eventos

Los callbacks de ai-garages son internos (de su cliente a su servidor). No los llames desde otros scripts.

NombreTipoQué hace
ai-garages:listcallback de cliente(garageId): los vehículos que el jugador puede sacar allí. Limitado a 2 cada 2 segundos.
ai-garages:takeOutcallback de cliente(garageId, vehicleId): hace aparecer el vehículo en el punto de salida.
ai-garages:parkcallback de cliente(garageId, netId, props): aparca el vehículo que conduce el jugador.

En esta página