ai-policealert dla deweloperów
Jak wysłać alert policyjny, który dotrze do ai-policealert (lub każdego innego skryptu alertów), pola DispatchAlert i własny eksport ai-policealert.
Aby wysłać alert policyjny ze swojego skryptu, wywołaj dispatch.alert(alert) z biblioteki (TypeScript) lub aiLib.dispatch.alert(alert) (Lua). Przechodzi przez warstwę dispatch AI Core i trafia do systemu alertów, którego używa serwer: ai-policealert albo obsługiwanego skryptu alertów zewnętrznych. Nigdy nie wywołuj eksportu ai-policealert bezpośrednio.
dispatch.alert
Wysyła jeden alert policyjny (lub innej pracy) przez AI Core. Dostają go członkowie jobs na służbie; bez jobs dostają go własne prace policyjne systemu alertów (dla ai-policealert: Alert jobs z panelu).
Strona: serwer · Czeka: nie
dispatch.alert(alert: DispatchAlert): booleanlocal sent = aiLib.dispatch.alert(alert) -- booleanParametry
Prop
Type
DispatchAlert
Prop
Type
Zwraca
true, gdy system alertów przyjął alert. false, gdy nie działa żaden system alertów albo alert jest nieprawidłowy (brak title).
Przykład
import { dispatch, onClientCallback } from "@aicore-fivem/lib/server";
import { Locale } from "./locale"; // przetłumaczone teksty twojego zasobu
// Klient zgłasza, że zaczął włamywać się do bankomatu; serwer alarmuje policję w pozycji gracza.
onClientCallback("myscript:breakAtm", (source) => {
const sent = dispatch.alert({
code: "10-90",
title: Locale("ALERT_ATM_TITLE"),
message: Locale("ALERT_ATM_MESSAGE"),
source, // współrzędne pochodzą od tego gracza
icon: "money-bill",
priority: "high",
});
if (!sent) console.log("no alert system is running");
return { ok: true };
});Teksty są pokazywane tak, jak je wysyłasz: przetłumacz je przed wywołaniem. Pola niewymienione powyżej są odrzucane. Nie wysyłaj alertu przy każdej powtarzanej akcji: ai-police na przykład trzyma jeden alert o strzałach na 150 m co 30 s.
Eksport serwera
DispatchAlert
Własny punkt wejścia ai-policealert. Wywołuje go tylko warstwa dispatch AI Core, gdy ai-policealert jest aktywnym systemem alertów; skrypty używają dispatch.alert opisanego wyżej. Typowany jako AiPoliceAlertServerExports w @aicore-fivem/shared.
Strona: serwer · Czeka: nie
DispatchAlert(alert: DispatchAlert): voidexports['ai-policealert']:DispatchAlert(alert)Parametry
Prop
Type
Zwraca
Nic. Bezpośrednie wywołanie pomija wybór systemu alertów przez AI Core, a coords nie jest uzupełniane z source (AI Core robi to przed wywołaniem eksportu).
Prywatne zdarzenia
Własny kontrakt serwer-klient skryptu (resource/common/alerts.ts). Mogą się zmieniać między wersjami: nie wywołuj ich ani nie nasłuchuj ich z innych zasobów.
| Nazwa | Kierunek | Co przenosi |
|---|---|---|
ai-policealert:client:alerts | serwer -> funkcjonariusz | Aktywne alerty pracy, w której funkcjonariusz jest na służbie (pełna lista; pusta lista czyści karty). |
ai-policealert:client:alert | serwer -> funkcjonariusz | Jeden nowy alert. |