Dispatch
Polizeialarme (oder Alarme für jeden Job) über das Alarmsystem senden, das der Server nutzt.
Polizeialarme laufen über ai-core, nie über die eigenen Exports oder Events eines Alarm-Skripts (ai-policealert eingeschlossen). ai-core leitet jeden Alarm an das aktive Alarmsystem weiter: das, das die Panel-Einstellung Alert script (Alarm-Skript) wählt, oder das erste, das läuft (die eingebauten Karten von ai-policealert kommen zuletzt). Das Alarmsystem zeigt ihn den Mitgliedern der Jobs des Alarms, die im Dienst sind.
ai-core beantwortet außerdem das QB-Event police:server:policeAlert für Alarmsysteme, die es nicht tun, sodass auch die Alarme von QB-Skripten ankommen.
SendDispatchAlert
Sendet einen Alarm. Nutze es für alles, worauf Beamte (oder ein anderer Job) reagieren sollen: Schüsse, ein Ladenüberfall, ein gestohlenes Auto.
Seite: Server · Wartet: nein · Lib: dispatch.alert
SendDispatchAlert(alert: DispatchAlert): booleanlocal sent = exports['ai-core']:SendDispatchAlert({ title = 'Store robbery', code = '10-90', source = source })Parameter
Prop
Type
DispatchAlert
Prop
Type
Unbekannte Felder werden verworfen. Siehe DispatchAlert.
Rückgabe
boolean: true, wenn das Alarmsystem den Alarm angenommen hat. false, wenn title fehlt oder leer ist, kein Alarmsystem läuft oder es fehlgeschlagen ist.
Beispiel
import { onClientCallback, resourceExport, near } from "@aicore-fivem/lib/server";
import { fail } from "@aicore-fivem/lib/shared";
import { Locale } from "common";
const core = resourceExport("ai-core");
const REGISTER = { x: 24.5, y: -1345.6, z: 29.5 };
onClientCallback("myscript:robRegister", { guards: [near(REGISTER, 2)], lock: true }, (source) => {
if (core.GetOnDutyCount("police") < 2) return fail("NOT_ENOUGH_POLICE");
core.SendDispatchAlert({
code: "10-90",
title: Locale("ALERT_STORE_ROBBERY"),
message: Locale("ALERT_STORE_NAME"),
coords: REGISTER,
source,
jobs: ["police"],
icon: "cash-register",
priority: "high",
});
return { ok: true };
});Texte werden so angezeigt, wie sie übergeben werden: Übersetze sie vor dem Senden mit Locale. Sende keinen Alarm in jedem Frame oder bei jedem Treffer: Ein Alarm für Schüsse sollte einen Cooldown pro Spieler haben.