AI Core
Veículosai-garages

ai-garages para desenvolvedores

Exports do servidor do ai-garages e os formatos que eles usam.

A partir do seu próprio script, use a camada garages da lib (servidor): garages.impound(vehicle, by?), garages.store(vehicle, garage?, by?), garages.open(source, garage?) e garages.stored(source). Ela funciona com qualquer script de garagem que o servidor rode. Os exports abaixo são o que a camada chama enquanto o ai-garages é o script de garagem ativo. O ai-garages não consegue abrir sua lista à distância, então garages.open responde false com ele.

Tipados como AiGaragesServerExports em @aicore-fivem/shared (garages.ts). Os três são síncronos.

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

Exports do servidor

ImpoundVehicle

Manda um veículo próprio para o pátio de apreensão: salva seu estado (combustível, motor, lataria), apaga a entidade e define seu estado como impound. O dono o recupera em um pátio de apreensão pagando a taxa.

Lado: Servidor · Espera: não

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

Parâmetros

Prop

Type

Retorno

true quando foi apreendido. false quando a entidade não existe ou não é um veículo próprio do ai-vehicles; nesse caso, apague-o você mesmo.

Exemplo

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

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

export function towAway(vehicle: number): void {
  if (!garages.ImpoundVehicle(vehicle)) DeleteEntity(vehicle); // não tem dono: só remova
}

StoreVehicle

Estaciona um veículo próprio em uma das garagens do painel: salva seu estado, apaga a entidade, define seu estado como garage.

Lado: Servidor · Espera: não

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

Parâmetros

Prop

Type

Retorno

true quando foi guardado. false para um veículo sem dono, um id de garagem que não existe, ou um pátio de apreensão.

GetStoredVehicles

Os veículos do personagem de um jogador que não estão fora: estacionados em uma garagem ou esperando no pátio de apreensão. Veículos de frota não estão incluídos.

Lado: Servidor · Espera: não

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

Retorno

Um array de GaragedVehicle. Vazio quando o jogador não tem um personagem carregado.

GaragedVehicle

Prop

Type

Exemplo

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

Eventos

Os callbacks do ai-garages são internos (do cliente dele para o servidor dele). Não os chame a partir de outros scripts.

NomeTipoO que faz
ai-garages:listcallback do cliente(garageId): os veículos que o jogador pode tirar ali. Limitado a 2 a cada 2 segundos.
ai-garages:takeOutcallback do cliente(garageId, vehicleId): cria o veículo no ponto de saída.
ai-garages:parkcallback do cliente(garageId, netId, props): estaciona o veículo que o jogador dirige.

Nesta página