Config = {} -- Allgemeine Einstellungen Config.Debug = true Config.UseBackgroundImages = true Config.MaxLicenseAge = 365 -- Tage bis Ablauf Config.RenewalDays = 30 -- Tage vor Ablauf für Verlängerung -- Berechtigte Jobs Config.AuthorizedJobs = { ['police'] = true, ['sheriff'] = true, ['government'] = true, ['judge'] = true, ['lawyer'] = true, ['ambulance'] = true, -- Für medizinische Lizenzen ['mechanic'] = true -- Für Fahrzeug-Lizenzen } -- Jobs that can reactivate specific license types Config.ReactivationPermissions = { ['police'] = {'weapon_license', 'drivers_license'}, ['admin'] = {'id_card', 'passport', 'business_license'}, ['ambulance'] = {'medical_license'}, ['driving_school'] = {'drivers_license'}, ['harbor'] = {'boat_license'}, ['airport'] = {'pilot_license'} } -- Lizenz-Typen Config.LicenseTypes = { ['id_card'] = { label = 'Personalausweis', icon = 'fas fa-id-card', color = '#667eea', price = 50, required_items = {}, can_expire = true, validity_days = 3650, -- 10 Jahre required_job = nil, description = 'Offizieller Personalausweis' }, ['drivers_license'] = { label = 'Führerschein', icon = 'fas fa-car', color = '#f093fb', price = 500, required_items = {'driving_test_certificate'}, can_expire = true, validity_days = 5475, -- 15 Jahre required_job = 'driving_school', description = 'Berechtigung zum Führen von Kraftfahrzeugen', classes = { 'A', 'A1', 'A2', 'B', 'BE', 'C', 'CE', 'D', 'DE' } }, ['weapon_license'] = { label = 'Waffenschein', icon = 'fas fa-crosshairs', color = '#4facfe', price = 2500, required_items = {'weapon_course_certificate', 'psychological_evaluation'}, can_expire = true, validity_days = 1095, -- 3 Jahre required_job = 'police', description = 'Berechtigung zum Führen von Schusswaffen', restrictions = { 'Nur für registrierte Waffen', 'Regelmäßige Überprüfung erforderlich', 'Nicht übertragbar' } }, ['passport'] = { label = 'Reisepass', icon = 'fas fa-passport', color = '#43e97b', price = 150, required_items = {'birth_certificate', 'id_card'}, can_expire = true, validity_days = 3650, -- 10 Jahre required_job = 'government', description = 'Internationales Reisedokument' }, ['business_license'] = { label = 'Gewerbeschein', icon = 'fas fa-briefcase', color = '#fa709a', price = 1000, required_items = {'business_plan', 'tax_certificate'}, can_expire = true, validity_days = 1825, -- 5 Jahre required_job = 'government', description = 'Berechtigung zur Ausübung eines Gewerbes' }, ['pilot_license'] = { label = 'Pilotenlizenz', icon = 'fas fa-plane', color = '#667eea', price = 5000, required_items = {'flight_hours_log', 'medical_certificate'}, can_expire = true, validity_days = 730, -- 2 Jahre required_job = 'airport', description = 'Berechtigung zum Führen von Luftfahrzeugen' }, ['boat_license'] = { label = 'Bootsführerschein', icon = 'fas fa-ship', color = '#00f2fe', price = 800, required_items = {'boat_course_certificate'}, can_expire = true, validity_days = 1825, -- 5 Jahre required_job = 'harbor', description = 'Berechtigung zum Führen von Wasserfahrzeugen' }, ['medical_license'] = { label = 'Approbation', icon = 'fas fa-user-md', color = '#ff6b6b', price = 0, -- Kostenlos für Ärzte required_items = {'medical_degree', 'medical_exam'}, can_expire = false, validity_days = nil, required_job = 'ambulance', description = 'Berechtigung zur Ausübung der Heilkunde' }, ['hunting_license'] = { label = 'Jagdschein', icon = 'fas fa-crosshairs', color = '#8b5a3c', price = 300, required_items = {'hunting_course_certificate'}, can_expire = true, validity_days = 1095, -- 3 Jahre required_job = 'police', description = 'Berechtigung zur Ausübung der Jagd' }, ['fishing_license'] = { label = 'Angelschein', icon = 'fas fa-fish', color = '#4ecdc4', price = 50, required_items = {}, can_expire = true, validity_days = 365, -- 1 Jahr required_job = 'police', description = 'Berechtigung zum Angeln in öffentlichen Gewässern' } } -- Standorte für Lizenz-Ausgabe Config.LicenseLocations = { ['city_hall'] = { label = 'Rathaus', coords = vector3(-544.85, -204.13, 38.22), blip = { sprite = 419, color = 2, scale = 0.8 }, available_licenses = { 'id_card', 'passport', 'business_license' }, ped = { model = 'a_m_m_business_01', coords = vector4(-544.9543, -204.8450, 37.2151, 219.1676) } }, ['driving_school'] = { label = 'Fahrschule', coords = vector3(-829.22, -1209.58, 7.33), blip = { sprite = 225, color = 46, scale = 0.8 }, available_licenses = { 'drivers_license' }, ped = { model = 'a_m_y_business_02', coords = vector4(-829.22, -1209.58, 6.33, 90.0) } }, ['police_station'] = { label = 'Polizeiwache', coords = vector3(441.07, -979.76, 30.69), blip = { sprite = 60, color = 29, scale = 0.8 }, available_licenses = { 'weapon_license' }, ped = { model = 's_m_y_cop_01', coords = vector4(441.07, -979.76, 29.69, 270.0) } }, ['hospital'] = { label = 'Krankenhaus', coords = vector3(307.7, -1433.4, 29.9), blip = { sprite = 61, color = 1, scale = 0.8 }, available_licenses = { 'medical_license' }, ped = { model = 's_m_m_doctor_01', coords = vector4(307.7, -1433.4, 28.9, 180.0) } } } -- Kommandos Config.Commands = { ['license'] = { name = 'lizenz', help = 'Lizenz-System öffnen', restricted = true -- Nur für berechtigte Jobs }, ['mylicense'] = { name = 'meinelizenz', help = 'Eigene Lizenzen anzeigen', restricted = false -- Für alle Spieler }, ['givelicense'] = { name = 'givelicense', help = 'Lizenz an Spieler vergeben', restricted = true, admin_only = true }, ['revokelicense'] = { name = 'revokelicense', help = 'Lizenz entziehen', restricted = true, admin_only = false } } -- Keybinds Config.Keybinds = { ['open_license_menu'] = { key = 'F6', command = 'lizenz', description = 'Lizenz-System öffnen' }, ['show_my_licenses'] = { key = 'F7', command = 'meinelizenz', description = 'Meine Lizenzen anzeigen' } } -- Benachrichtigungen Config.Notifications = { ['no_permission'] = { message = 'Du hast keine Berechtigung!', type = 'error' }, ['no_players_nearby'] = { message = 'Keine Spieler in der Nähe!', type = 'error' }, ['license_not_found'] = { message = 'Keine Lizenz gefunden!', type = 'error' }, ['license_expired'] = { message = 'Diese Lizenz ist abgelaufen!', type = 'warning' }, ['license_expires_soon'] = { message = 'Diese Lizenz läuft bald ab!', type = 'warning' }, ['license_granted'] = { message = 'Lizenz erfolgreich ausgestellt!', type = 'success' }, ['license_revoked'] = { message = 'Lizenz wurde entzogen!', type = 'info' }, ['photo_saved'] = { message = 'Foto gespeichert!', type = 'success' }, ['insufficient_funds'] = { message = 'Nicht genügend Geld!', type = 'error' }, ['missing_items'] = { message = 'Benötigte Gegenstände fehlen!', type = 'error' } } -- Sounds Config.Sounds = { ['card_flip'] = 'sounds/card_flip.mp3', ['camera_shutter'] = 'sounds/camera_shutter.mp3', ['notification'] = 'sounds/notification.mp3' } -- Datenbank-Einstellungen Config.Database = { ['table_name'] = 'player_licenses', ['auto_cleanup'] = true, -- Alte Lizenzen automatisch löschen ['cleanup_days'] = 365 -- Nach wie vielen Tagen löschen }