AI Core
Mundo y herramientasai-properties

ai-properties para desarrolladores

Flags de GlobalState, metadata, nombres de alijos, tablas y eventos internos de ai-properties.

ai-properties no tiene exports. Otros scripts pueden leer tres cosas que guarda.

Flag de propiedad con dueño (GlobalState)

Cada propiedad con dueño tiene la clave de GlobalState prop:<id> en true (por ejemplo prop:grove_1). La clave se quita (no se pone en false) cuando se vende la propiedad. Se puede leer en el servidor y en cualquier cliente.

// Cliente o servidor: ¿tiene alguien Grove Street 1?
const owned = GlobalState["prop:grove_1"] === true;

La propiedad en la que está un personaje (metadata)

La metadata property de ai-core contiene el id de la propiedad en la que está el personaje, o nada cuando está fuera. Cada interior de propiedad funciona en su propio routing bucket, tomado del asignador de buckets de ai-core mientras hay alguien dentro.

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

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

export function isInsideProperty(source: number): boolean {
  const data = core.GetPlayerData(source);
  return typeof data?.metadata.property === "string";
}

Alijos

El alijo de una propiedad es property_<id>_<owner charId> (por ejemplo property_grove_1_12). Es por dueño: tras una venta, el siguiente dueño recibe un nombre de alijo nuevo y vacío. El tamaño viene de las ranuras y el peso de alijo del panel.

Tablas

TablaQué contiene
ai_properties_ownedUna fila por propiedad con dueño: id de personaje del dueño y nombre del dueño.
ai_properties_keysQuienes tienen llave por propiedad, con su nombre en el momento en que se dio la llave.

Eventos

Los eventos de ai-properties son internos (su cliente y su servidor); no los llames desde otros scripts.

NombreTipoQué hace
ai-properties:minecallback de clienteLas propiedades de las que el jugador es dueño o tiene llave (la instantánea de la sesión). Limitado a 2 cada 10 segundos.
ai-properties:client:accessservidor a cliente(id, access): ha cambiado el acceso del jugador ("owner", "key" o false).
ai-properties:buy / entercallback de cliente(id): comprar en la puerta, o entrar.
ai-properties:exit / stash / keys / giveKey / sellcallback de clienteAcciones dentro de la propiedad en la que está el jugador.
ai-properties:takeKeycallback de cliente(charId): recuperar una llave.
ai-properties:client:insideservidor a cliente(id | null, to): el jugador está ahora dentro de esta propiedad (o ha salido); teletransportar a to.

En esta página