ai-policealert pour les développeurs
Comment envoyer une alerte police qui atteint ai-policealert (ou tout autre script d’alerte), les champs de DispatchAlert et l’export propre d’ai-policealert.
Pour envoyer une alerte police depuis votre script, appelez dispatch.alert(alert) de la lib (TypeScript) ou aiLib.dispatch.alert(alert) (Lua). Elle passe par la couche dispatch d’AI Core et atteint le système d’alerte qu’utilise le serveur, quel qu’il soit : ai-policealert, ou un script d’alerte tiers pris en charge. N’appelez jamais directement l’export d’ai-policealert.
dispatch.alert
Envoie une alerte police (ou d’un autre métier) à travers AI Core. Les membres en service de jobs la reçoivent ; sans jobs, ce sont les métiers de police propres au système d’alerte (pour ai-policealert : les Alert jobs du panneau).
Côté : serveur · Attend : non
dispatch.alert(alert: DispatchAlert): booleanlocal sent = aiLib.dispatch.alert(alert) -- booleanParamètres
Prop
Type
DispatchAlert
Prop
Type
Retour
true quand un système d’alerte a pris l’alerte. false quand aucun système d’alerte ne tourne ou que l’alerte est invalide (pas de title).
Exemple
import { dispatch, onClientCallback } from "@aicore-fivem/lib/server";
import { Locale } from "./locale"; // les textes traduits de votre ressource
// Un client indique qu’il a commencé à forcer un distributeur ; le serveur alerte la police à la position du joueur.
onClientCallback("myscript:breakAtm", (source) => {
const sent = dispatch.alert({
code: "10-90",
title: Locale("ALERT_ATM_TITLE"),
message: Locale("ALERT_ATM_MESSAGE"),
source, // les coordonnées viennent de ce joueur
icon: "money-bill",
priority: "high",
});
if (!sent) console.log("no alert system is running");
return { ok: true };
});Les textes sont affichés tels que vous les envoyez : traduisez-les avant l’appel. Les champs non listés ci-dessus sont ignorés. N’envoyez pas une alerte pour chaque action répétée : ai-police, par exemple, garde une seule alerte de tirs par zone de 150 m toutes les 30 s.
Export serveur
DispatchAlert
Le point d’entrée propre à ai-policealert. Seule la couche dispatch d’AI Core l’appelle tant qu’ai-policealert est le système d’alerte actif ; les scripts utilisent dispatch.alert ci-dessus. Typé AiPoliceAlertServerExports dans @aicore-fivem/shared.
Côté : serveur · Attend : non
DispatchAlert(alert: DispatchAlert): voidexports['ai-policealert']:DispatchAlert(alert)Paramètres
Prop
Type
Retour
Rien. L’appeler directement contourne le choix du système d’alerte fait par AI Core, et coords n’est pas rempli à partir de source (AI Core le fait avant d’appeler l’export).
Events privés
Le contrat serveur-client propre au script (resource/common/alerts.ts). Ils peuvent changer d’une version à l’autre : ne les déclenchez pas et ne les écoutez pas depuis d’autres ressources.
| Nom | Direction | Ce qu’il transporte |
|---|---|---|
ai-policealert:client:alerts | serveur -> agent | Les alertes actives du métier en service de l’agent (une liste complète ; une liste vide efface les cartes). |
ai-policealert:client:alert | serveur -> agent | Une nouvelle alerte. |
ai-policealert
Le système d’alertes police intégré (cartes d’alerte, blips sur la carte et une touche de point de passage) pour les agents en service.
ai-prison
Des peines de prison comptées par le serveur, avec objets confisqués à l’entrée, travail en prison, cantine et évasions sanctionnées par du temps supplémentaire.