Scripts 2026-04-09

Agency-ProgressBar: Das UI-Detail, das jedes Script leise aufwertet

TDYSKY

TDYSKY

Founder & Lead Developer at Agency Scripts

Ein kleines Script mit übergroßer Wirkung

Progress-Bars tauchen in FiveM überall auf — Lockpicking, Reparieren, Geldwäsche, Mining, medizinische Hilfe. Standardimplementierungen sind funktional, aber flach. Agency-ProgressBar ist unsere Sicht darauf, wie sich dieses Hilfsmittel anfühlen sollte, wenn jemand Wert auf die Details legt.

Die Anatomie einer guten Progress-Bar

Eine gute Progress-Bar kommuniziert gleichzeitig vier Dinge: welche Aktion passiert, wie weit du schon bist, wie viel Zeit noch bleibt und ob du abbrechen kannst. Die meisten Implementierungen decken nur die ersten beiden ab. Agency-ProgressBar zeigt alle vier, mit subtilen Animationen, die Fortschritt flüssig wirken lassen statt ruckelig.

Abbruch, der funktioniert

Ein vom Spieler ausgelöster Abbruch startet eine kurze Fade-Out-Animation, die die Deckkraft des Balkens in 300ms auf null zurückführt. Kein abruptes Verschwinden. Entwickler können einen Cancel-Callback registrieren, damit Scripts sauber aufräumen, wenn Spieler mittendrin von einer Aktion weggehen.

Kontextbezogene Positionierung

Der Balken erscheint in der Nähe des relevanten Bildschirmelements — über deinem Kopf bei Aktionen, die dich selbst betreffen, über dem Ziel-NPC bei interaktiven Aktionen. Kein Ablesen mehr vom unteren Bildschirmrand, während oben etwas passiert. Diese kontextbezogene Positionierung ist ein subtiles UX-Upgrade, das Spieler spüren, ohne es benennen zu können.

Das Export-Pattern

Wie alle unsere Utility-Scripts stellt Agency-ProgressBar eine einfache Exports-API bereit: exports['agency-progressbar']:Play({label, duration, canCancel, onCancel, onDone}). In Minuten in jedes Script integriert. Es arbeitet mit Agency-Notify, Agency-Hud und dem Rest unseres Ökosystems ohne jede Spezialkonfiguration zusammen.

Share this article

Ready to upgrade your server?

Check out our premium FiveM scripts in the Agency Scripts store or join our Discord community for support and updates.