AI Core
API-ReferenzAI Core: Server-Exports

Stress und Bedürfnisse

Stress hinzufügen oder abbauen und Hunger und Durst auffüllen, über das HUD, das sie führt.

Stress, Hunger und Durst leben in dem HUD-Skript, das sie anzeigt. ai-core leitet Änderungen an das erste laufende HUD, das Stress führt, weiter: tgiann-lumihud, tgiann-hudv2, tgiann-modern-hud, qb-hud, ps-hud, dann ai-hud. Rufe nie die eigenen Events oder Exports eines HUD auf (hud:server:GainStress, AddNeed von ai-hud).

GetStressSystem

Der Ressourcenname des HUD, dem ai-core Stress gibt.

Seite: Server · Wartet: nein · Lib: stress.provider()

Signature
GetStressSystem(): string | null
Lua
local system = exports['ai-core']:GetStressSystem() -- String oder nil

Parameter

Keine.

Rückgabe

string | null: der Ressourcenname des HUD. null, wenn kein HUD mit Stress läuft (Stressänderungen werden dann verworfen).

Beispiel

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

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

addCommand("stresssystem", { help: "Shows the HUD that keeps stress", restricted: true }, () => {
  console.log(core.GetStressSystem() ?? "none: stress is dropped");
});

AddStress

Fügt einem Spieler Stress hinzu oder baut ihn mit einem negativen Betrag ab.

Seite: Server · Wartet: nein · Lib: stress.gain(source, amount) und stress.relieve(source, amount) (beide nehmen einen positiven Betrag)

Signature
AddStress(source: number, amount: number): boolean
Lua
local ok = exports['ai-core']:AddStress(source, 5)    -- mehr Stress
local ok2 = exports['ai-core']:AddStress(source, -10) -- weniger Stress

Parameter

Prop

Type

Rückgabe

boolean: true, wenn die Änderung an das HUD übergeben wurde. false, wenn source oder amount außerhalb des Bereichs liegt, kein HUD mit Stress läuft oder das HUD fehlgeschlagen ist. Das HUD begrenzt das Ergebnis auf 0-100.

Beispiel

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

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

// Einen Laden auszurauben ist stressig; ein Joint entspannt.
export function robberyStarted(source: number): void {
  core.AddStress(source, 8);
}

core.RegisterUsableItem("joint", (source) => {
  core.AddStress(source, -15);
});

Stress durch Schießen und schnelles Fahren ist Aufgabe des HUD selbst. Nutze AddStress für Ereignisse, die dein Skript kennt.

RefillNeeds

Füllt Hunger und Durst eines Spielers über das HUD, das sie führt, vollständig auf. Nutze es nach einer Wiederbelebung oder einem Krankenhausaufenthalt.

Seite: Server · Wartet: nein · Lib: needs.refill

Signature
RefillNeeds(source: number): boolean
Lua
local ok = exports['ai-core']:RefillNeeds(source)

Parameter

Prop

Type

Rückgabe

boolean: true, wenn das Auffüllen an das HUD übergeben wurde. Ohne ein HUD, das Bedürfnisse führt, setzt ai-core die Charakter-Metadaten hunger und thirst selbst auf 100 (und informiert HUDs im QB-Stil mit hud:client:UpdateNeeds) und antwortet true. false, wenn der Spieler keinen geladenen Charakter hat oder das HUD fehlgeschlagen ist.

Beispiel

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

const core = resourceExport("ai-core");
const BED = { x: 317.8, y: -585.2, z: 43.3 };

// Ein Krankenhausbett: wiederbeleben, volle Gesundheit, voller Magen.
onClientCallback("myscript:hospitalBed", { guards: [near(BED, 2)], lock: true }, (source) => {
  if (!core.RemoveMoney(source, "bank", 500, "hospital_bed")) return fail("NOT_ENOUGH_MONEY");
  if (!core.RevivePlayer(source)) core.HealPlayer(source);
  core.RefillNeeds(source);
  return { ok: true };
});

Auf dieser Seite