- aether-medical: Stationen/Belegung, Intensivstation, Blutbank, Fuhrpark, Nachrichten/Aushänge, Berichte und Textbausteine (server + NUI) - aether-admin: vollständiges Server-Admin-Panel als echtes FiveM-Resource, an aether-core gekoppelt (Rechte über aether_users.admin_group), mit WebRTC-Live-Kameras (Bildschirmfreigabe) und separatem Media-Server (SFU) - Prototypen admin/ vervollständigt - SQL-Schema aether_admin.sql - Docker-Compose mit MariaDB und idempotenter Auto-Migration (schema_migrations) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
50 lines
1.6 KiB
Lua
50 lines
1.6 KiB
Lua
-- =====================================================================
|
||
-- Aether Documents — Dokumenttypen und Grenzen
|
||
-- =====================================================================
|
||
|
||
Dokumente = Dokumente or {}
|
||
|
||
-- Wie viele Dokumente passen in eine Boerse?
|
||
Dokumente.MAX_SLOTS = 10
|
||
|
||
-- Reichweite zum Vorzeigen (Meter)
|
||
Dokumente.VORZEIG_WEITE = 4.0
|
||
|
||
-- Item, das als Boerse dient (aus aether-inventory)
|
||
Dokumente.BOERSE_ITEM = 'boerse'
|
||
|
||
-- ---------------------------------------------------------------------
|
||
-- Dokumenttypen
|
||
-- automatisch = wird bei der Charaktererstellung angelegt
|
||
-- behoerde = kann nur von einer Behoerde ausgestellt werden
|
||
-- ---------------------------------------------------------------------
|
||
Dokumente.Typen = {
|
||
perso = {
|
||
name = 'Personalausweis', icon = '🪪', accent = '#2f9e73',
|
||
automatisch = true, gueltigJahre = 10,
|
||
},
|
||
gk = {
|
||
name = 'Gesundheitskarte', icon = '➕', accent = '#2fb0c4',
|
||
automatisch = true, gueltigJahre = 6,
|
||
},
|
||
vk = {
|
||
name = 'Visitenkarte', icon = '💼', accent = '#f5a623',
|
||
automatisch = true,
|
||
},
|
||
fs = {
|
||
name = 'Führerschein', icon = '🚗', accent = '#d5638a',
|
||
behoerde = true, gueltigJahre = 15,
|
||
},
|
||
ws = {
|
||
name = 'Waffenschein', icon = '🔫', accent = '#e0503f',
|
||
behoerde = true, gueltigJahre = 3,
|
||
},
|
||
}
|
||
|
||
--- Prueft, ob ein Typ gueltig ist
|
||
--- @param typ any Zu pruefender Wert
|
||
--- @return boolean
|
||
function Dokumente.TypGueltig(typ)
|
||
return type(typ) == 'string' and Dokumente.Typen[typ] ~= nil
|
||
end
|