MDT
Bußgelder, Haftbefehle, Festnahmen und Haftakten in das Polizei-MDT schreiben, das der Server nutzt.
Akten laufen über ai-core, nie über die eigenen Exports oder Events eines MDT. ai-core leitet jede Akte an das aktive MDT weiter: das, das die Panel-Einstellung MDT script (MDT-Skript) wählt, oder das erste, das läuft. Es gibt kein ai-*-MDT, deshalb werden Akten nirgends geschrieben, solange kein MDT läuft. Den MDT-Bildschirm zu öffnen passiert auf dem Client (Client-Export OpenMdt, Lib mdt.open).
GetMdtSystem
Der Ressourcenname des MDT, an das ai-core weiterleitet.
Seite: Server · Wartet: nein · Lib: mdt.provider()
GetMdtSystem(): string | nulllocal system = exports['ai-core']:GetMdtSystem() -- String oder nilParameter
Keine.
Rückgabe
string | null: der Ressourcenname des MDT. null, wenn keines läuft.
Beispiel
import { addCommand, resourceExport } from "@aicore-fivem/lib/server";
const core = resourceExport("ai-core");
addCommand("mdtsystem", { help: "Shows the MDT in use", restricted: true }, () => {
console.log(core.GetMdtSystem() ?? "none: records are not written");
});AddMdtRecord
Schreibt eine Akte über einen Spieler in das MDT: ein Bußgeld, einen Haftbefehl, eine Festnahme oder eine Haftstrafe. ai-core ergänzt die Citizen-IDs und Namen des Ziels und des Beamten.
Seite: Server · Wartet: nein · Lib: mdt.record
AddMdtRecord(record: MdtRecord): booleanlocal written = exports['ai-core']:AddMdtRecord({ kind = 'fine', target = target, by = source, title = 'Speeding', amount = 250 })Parameter
Prop
Type
MdtRecord
Prop
Type
Siehe MdtRecord und MdtRecordKind.
Rückgabe
boolean: true, wenn das MDT sie geschrieben hat. false, wenn die Akte ungültig ist (falsches kind, kein title, target keine positive ganze Zahl), das Ziel keinen geladenen Charakter hat, kein MDT läuft oder das MDT keine Akten von Skripten annimmt oder diese Art nicht kennt.
Beispiel
import { onClientCallback, resourceExport } from "@aicore-fivem/lib/server";
import { fail, readId } from "@aicore-fivem/lib/shared";
import { Locale } from "common";
const core = resourceExport("ai-core");
// Ein Beamter sperrt einen Spieler für 20 Minuten ein; das MDT hält die Akte fest.
onClientCallback(
"myscript:jail",
{ args: ([target]) => { const id = readId(target); return id === null ? null : [id]; }, lock: true },
(source, target) => {
if (core.GetDutyJob(source) !== "police") return fail("NOT_POLICE");
if (!core.JailPlayer(target, 20, source)) return fail("JAIL_FAILED");
core.AddMdtRecord({ kind: "jail", target, by: source, title: Locale("RECORD_ROBBERY"), minutes: 20 });
return { ok: true };
},
);