AI Core
Referencia de la APIAI Core: exports de servidor

Banca

Abre la pantalla de un script de banca y lee el saldo de sociedad de un trabajo a través del script de banca que tenga el servidor.

La capa de banca llega al script de banca activo: el que elige el ajuste Banking script (script de banca) del panel, o el primero que esté en marcha. Abre la pantalla de ese script e informa de los saldos de sociedad. El dinero de trabajos y bandas en sí siempre se mueve a través de los exports de dinero de ai-core (Dinero y cuentas), nunca a través de un script de banca.

La relación entre las cuentas de trabajos y bandas y el script de banca depende del ajuste del panel Job and gang accounts (cuentas de trabajos y bandas):

  • ai-core's accounts (las cuentas de ai-core, por defecto): ai-core guarda el dinero; el script de banca muestra el mismo saldo, y el dinero que se mueve en su pantalla también se mueve en ai-core.
  • The script's own accounts (las cuentas propias del script): el script de banca guarda el dinero; las cuentas bank de trabajos y bandas de ai-core leen y cambian las cuentas del script.

GetBankingSystem

El nombre de recurso del script de banca que usa ai-core.

Lado: Servidor · Espera: no · Lib: banking.provider()

Firma
GetBankingSystem(): string | null
Lua
local system = exports['ai-core']:GetBankingSystem() -- string o nil

Parámetros

Ninguno.

Devuelve

string | null: el nombre de recurso del script de banca. null cuando no hay ninguno en marcha (el dinero de los trabajos se queda entonces solo en ai-core).

Ejemplo

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

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

addCommand("bankingsystem", { help: "Shows the banking script in use", restricted: true }, () => {
  console.log(core.GetBankingSystem() ?? "none");
});

OpenBank

Abre la pantalla del script de banca para un jugador. Úsalo desde tu propio cajero o mostrador de banco.

Lado: Servidor · Espera: no · Lib: banking.open

Firma
OpenBank(source: number): boolean
Lua
local opened = exports['ai-core']:OpenBank(source)

Parámetros

Prop

Type

Devuelve

boolean: true cuando se abrió la pantalla. false cuando el jugador no tiene un personaje cargado, no hay ningún script de banca en marcha o su pantalla no se puede abrir desde otro script.

Ejemplo

import { onClientCallback, resourceExport, near } from "@aicore-fivem/lib/server";
import { fail } from "@aicore-fivem/lib/shared";

const core = resourceExport("ai-core");
const COUNTER = { x: 149.9, y: -1040.5, z: 29.4 };

onClientCallback("myscript:bankCounter", { guards: [near(COUNTER, 2)] }, (source) =>
  core.OpenBank(source) ? { ok: true } : fail("BANK_UNAVAILABLE"),
);

GetBankSocietyBalance

El saldo de sociedad de un trabajo tal como lo muestra la configuración de banca: la cuenta bank del trabajo en ai-core con ai-core's accounts, la cuenta propia del script con The script's own accounts. Úsalo para mostrarlo (un menú de jefe); para mover dinero del trabajo usa los exports de dinero.

Lado: Servidor · Espera: no · Lib: banking.societyBalance

Firma
GetBankSocietyBalance(job: string): number | null
Lua
local balance = exports['ai-core']:GetBankSocietyBalance('police') -- number o nil

Parámetros

Prop

Type

Devuelve

number | null: el saldo. null cuando no hay ningún script de banca en marcha, el trabajo no tiene cuenta (trabajo desconocido, o el script no guarda ninguna para él) o job no es un texto. Sin un script de banca, lee la cuenta del trabajo con GetSharedMoney("job", job, "bank").

Ejemplo

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

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

/** The boss menu balance, with or without a banking script. */
export function societyBalance(job: string): number {
  return core.GetBankSocietyBalance(job) ?? core.GetSharedMoney("job", job, "bank") ?? 0;
}

En esta página