Ein leichtes, modernes ESX-HUD, das dem Spieler anzeigt Status, Jobs, Geldund ein Sprachkommunikation Cue über NUI. Entwickelt für hohe Leistung und einfache Integration in bestehende ESX-Server.
Funktionen
Statusleisten
Hunger und Durst mit animierter Füllung und Prozentangaben.
Config = {
DEBUG = false,
-- How to get ESX:
ESX_method = "function", -- "function" (export) or "event"
eventNameESX = "esx:getSharedObject",
extendedName = "extended", -- e.g. "es_extended" / "extended"
VERSION_ESX = "final", -- "legacy" or "final" (informational)
-- Status source (list of {name, percent}):
statusEventName = "esx_customui:updateStatus",
ACTIVED = {
JOB = true,
JOB2 = true,
MONEY = true,
BLACK_MONEY = true,
MICRO = true
}
}
Hinweise
Wenn du einen alternativen Status-Tick verwendest (z. B. sigma_hud:onTick), hört der Client zu auf Config.statusEventNameoder fällt zurück auf "sigma_hud:onTick".
Clientereignisse und Datenfluss
Initialisierung
esx:playerLoaded → HUD wird mit ESX-Spielerdaten initialisiert.
Beim Initialisieren wird das HUD angezeigt und NUI empfängt:
SendNUIMessage({ type = "init", config = Config.ACTIVED })
Statusaktualisierungen (Hunger/Durst)
Anhören Config.statusEventName (Standard esx_customui:updateStatus) und eine Liste wie folgt ausgeben:
TriggerEvent("esx_customui:updateStatus", {
{ name = "hunger", percent = 48.0 },
{ name = "thirst", percent = 72.0 }
})
HUD ordnet diese den beiden Statusleisten zu.
Hauptberuf / Nebenjob
esx:setJob und esx:setJob2 werden automatisch verarbeitet. NUI empfängt:
esx:setAccountMoney Aktualisierungen zu Bargeld und Schwarzgeld:
SendNUIMessage({ type = "updateMoney", moneys = {
{ label = "Liquide", value = cash.money },
{ label = black.label, value = black.money }
}})
Stimme (Sprechanzeige)
Umfragen NetworkIsPlayerTalking(PlayerId()); zeigt/blendet das Mikrofonsymbol ein mit:
SendNUIMessage({ type = "toogleMicro", show = true/false })
In NUI existiert eine Hilfsfunktion zum Ändern von Proximity-Klassen (type = "changeMicro"), damit du es bei Bedarf in deine Sprachressource einbinden kannst.
HUD ein-/ausblenden (benutzerdefiniert)
Auslösung von beliebiger Stelle clientseitig:
TriggerEvent("iHud-V2::show", true) -- show
TriggerEvent("iHud-V2::show", false) -- hide
Installation
Lass den Ordner in deinem resources (z.B resources/[ui]/iHud-V2).
Sicherstellen der Ressource:
ensure iHud-V2
Konfigurieren ESX-Zugriffsmethode, Statusereignisnameund Abschnitte umschalten in config.lua.
Bestätige, dass dein Status-Skript Emits sendet { name = "hunger"/"thirst", percent = <0-100> } Arrays zu Config.statusEventName.
Kompatibilität & Tipps
ESX-Abruf
function Der Modus erwartet: ESX = exports[Config.extendedName]:getSharedObject()
event Der Modus erwartet: TriggerEvent(Config.eventNameESX, function(obj) ESX = obj end)
Sprachnähe
Der HUD wird mit einem sprechenden Indikator geliefert. Um die Nähe (flüstern/normal/schreien) anzuzeigen, lasse deine Sprachressource eine NUI-Nachricht senden mit type="changeMicro" und deine gewählte CSS-Klasse.
Styling
Schriftarten und Symbole werden von CDNs geladen; die Benutzeroberfläche ist responsiv und für RP-Server minimalistisch gehalten.
Einrichtungsanleitung
Das aktuelle iHUD-Paket enthält editierbare Lua- und NUI-Einstellungen, aber keine README.
Voraussetzungen und Vorbereitung
ESX und eine Status-Ressource, die Hunger-/Durstwerte sendet.
Die konfigurierten Voice- und Job-/Geld-Events müssen mit dem Server übereinstimmen.
Installation
Extrakt iHud-V2.
Konfiguriere das Status-Event und das HUD-Verhalten in config.lua; ändere die NUI-Darstellung nur in der enthaltenen NUI-Konfiguration.
Starte nach ESX und den Status-/Voice-Ressourcen, die es liest.
Konfigurations-Checkpoints
Teste Gesundheits-, Rüstungs-, Hunger-, Durst-, Job-, Geld- und Voice-Talking-Status.
Überprüfe Reconnect- und Auflösungsänderungen ohne NUI-Fehler.
Sicherheit: Sichere die betroffene Ressource und die Datenbanktabellen, verwende Anmeldeinformationen, die deinem Server gehören, und führe einen Staging-Test durch, bevor du eine Live-Ressource ersetzt. Die vollständige Konfiguration verbleibt im Download-Paket.