AI Core
Trabajos y serviciosai-cityhall

ai-cityhall para desarrolladores

La metadata de los objetos de documento que escribe ai-cityhall (DNI, licencia de conducir), cómo dar un documento desde otro script y sus eventos privados.

ai-cityhall no tiene exports. Los trabajos cogidos en la oficina de empleo se fijan con las funciones de trabajos de ai-core, y los documentos son objetos de inventario normales, así que otro script trabaja con ellos a través de AI Core.

Metadata de los objetos de documento

Un documento (id_card, driver_license o cualquier objeto de la lista Documents) es un objeto único cuya metadata lleva al titular. Los campos son los de qbx_idcard, así que los scripts escritos para Qbox los leen tal cual.

Prop

Type

Dar un documento desde otro script

Usar el objeto muestra la tarjeta, lo haya dado quien lo haya dado: ai-cityhall registra cada objeto de documento como usable. Da el objeto con la misma metadata y se comporta como uno comprado en el mostrador.

Lado: Servidor · Espera: no

Ejemplo

Un script de policía entrega una licencia de conducir nueva tras un examen:

import { inventory, notify, online } from "@aicore-fivem/lib/server";

function giveLicense(source: number): boolean {
  const c = online.character(source);
  if (!c) return false;
  const metadata = {
    name: `${c.firstname} ${c.lastname}`,
    firstname: c.firstname,
    lastname: c.lastname,
    birthdate: c.birthdate,
    sex: c.sex,
    nationality: c.nationality,
    citizenid: c.citizenid,
  };
  if (!inventory.canCarryItem(source, "driver_license", 1, metadata)) {
    notify(source, "No room in your inventory", "error");
    return false;
  }
  return inventory.addItem(source, "driver_license", 1, metadata);
}

Solo los objetos de la lista Documents del panel se registran como usables en ai-cityhall. Un objeto que no está en esa lista no muestra ninguna tarjeta al usarlo.

Dinero

Los documentos se pagan con RemoveMoney de ai-core desde las cuentas del panel, con el motivo de registro cityhall:<item> (por ejemplo cityhall:id_card).

Eventos y callbacks privados

El contrato propio del script (resource/common/hall.ts). El servidor comprueba la distancia al ayuntamiento en cada llamada. Pueden cambiar entre versiones: no los dispares ni los escuches desde otros recursos.

NombreDirecciónQué transporta
ai-cityhall:offercallback de cliente(hallId): responde { ok, jobs, documents }, lo que ofrece este ayuntamiento.
ai-cityhall:takeJobcallback de cliente(hallId, job): coger un trabajo de la oficina de empleo.
ai-cityhall:buycallback de cliente(hallId, item): comprar un documento.
ai-cityhall:client:showCardservidor -> cada jugador cerca de un documento enseñado(card): mostrar la tarjeta en pantalla.
ai-cityhall:client:showingservidor -> el jugador que lo enseña(): reproducir la animación de enseñar.

En esta página