Config = {} -- ===================== -- ALLGEMEIN -- ===================== -- Discord Webhook URL für Blackmarket-Logs (leer lassen = deaktiviert) -- WICHTIG: Niemals die Webhook-URL im öffentlichen Code teilen! Config.WebhookURL = "https://discordapp.com/api/webhooks/1490122439026540714/F-do1bWGLaO4etCOal4nrjxByDfBaQccqmUwLmlXJkUqaxk-skc93Ib1UljbYPE9KuyI" -- Interaktionsdistanz zum NPC (in Metern) Config.InteractionDistance = 2.5 -- Erkennungsdistanz für NPC-Suche (Performance-Optimierung) Config.CoarseDistance = 50.0 -- ===================== -- BENACHRICHTIGUNGEN -- ===================== Config.Notification = { event = 'hex_4_hud:notify', -- Event-Name für Benachrichtigungen title = 'Schwarzmarkt', -- Standard-Titel duration = 3000, -- Dauer in ms } -- Help-Notify (E-Taste Anzeige) Config.HelpNotify = { export = 'hex_4_hud', -- Resource-Name showFunc = 'ShowHelpNotify', -- exports[export]:showFunc(text, key) hideFunc = 'HideHelpNotify', -- exports[export]:hideFunc() } -- ===================== -- BEZAHLUNG -- ===================== -- 'money' = Bargeld | 'black_money' = Schwarzgeld | 'both' = Schwarzgeld zuerst, Rest Bargeld Config.PaymentMethod = 'black_money' -- ===================== -- NPC -- ===================== Config.DefaultNpcModel = 's_m_y_dealer_01' Config.DefaultNpcScenario = 'WORLD_HUMAN_DRUG_DEALER' -- ===================== -- UI THEME (wird als CSS-Variablen ans Frontend gesendet) -- ===================== Config.Theme = { accent = '#dc2626', -- Hauptakzentfarbe (Rot) accentLight = '#ef4444', -- Helle Akzentfarbe surfaceBase = 'rgba(10, 10, 14, 0.97)', -- Hintergrundfarbe gridTileHeight = 160, -- Höhe der Kategorie-Kacheln in Pixel } -- ===================== -- STANDORT-SYSTEM -- ===================== -- 'fixed' = alle Standorte immer aktiv | 'rotating' = zufällige Rotation Config.LocationMode = 'rotating' -- Rotation-Einstellungen (nur bei LocationMode = 'rotating') Config.Rotation = { maxActive = 1, -- Wie viele Standorte gleichzeitig aktiv intervalMinutes = 720, -- Rotation alle X Minuten } -- Alle möglichen Standorte -- Bei 'fixed': ALLE sind aktiv | Bei 'rotating': maxActive werden zufällig gewählt Config.Locations = { ['bm_1'] = { label = 'Schwarzmarkt', coords = vector4(720.71, -1148.72, 23.74, 175.47), npcModel = nil, -- nil = Config.DefaultNpcModel npcScenario = nil, -- nil = Config.DefaultNpcScenario }, ['bm_2'] = { label = 'Schwarzmarkt', coords = vector4(714.67224121094, -695.48962402344, 31.754278182983, 0.17864993214607), npcModel = nil, npcScenario = nil, }, } -- ===================== -- KATEGORIEN & ITEMS (Grid-Kacheln auf der Startseite) -- ===================== -- Felder pro Kategorie: -- id = Eindeutige ID (wird intern für Filter verwendet) -- label = Anzeigename auf der Kachel -- icon = Icon-Name (crosshairs, pills, wrench, shield, package) -- image = Hintergrundbild-URL (Unsplash o.ä., leer = Fallback-Icon + Gradient) -- color = Rahmen-/Akzentfarbe als Hex (z.B. '#dc2626') -- gridSize = Breite: 'small' (1 Spalte), 'medium' (2 Spalten), 'large' (volle Breite) -- height = Individuelle Höhe in Pixel (optional, Standard = Config.Theme.gridTileHeight) -- items = Array der kaufbaren Items { name, price, limit, label (optional) } Config.Categories = { { id = 'waffen', label = 'Waffen', icon = 'crosshairs', image = 'https://images.unsplash.com/photo-1595590424283-b8f17842773f?w=600&q=80', color = '#dc2626', gridSize = 'medium', items = { { name = 'weapon_pistol', price = 15000, limit = 1, label = 'Pistole' }, { name = 'weapon_knife', price = 2000, limit = 3, label = 'Messer' }, { name = 'ammo_mg', price = 500, limit = 10, label = 'Munition' }, }, }, { id = 'drogen', label = 'Drogen', icon = 'pills', image = 'https://images.unsplash.com/photo-1639677425025-e4f43c990156?w=600&q=80', color = '#a855f7', gridSize = 'small', items = { { name = 'weed_baggy', price = 200, limit = 20, label = 'Weed Tüte' }, { name = 'coke_baggy', price = 500, limit = 10, label = 'Koks Tüte' }, { name = 'meth_baggy', price = 600, limit = 10, label = 'Meth Tüte' }, }, }, { id = 'werkzeuge', label = 'Werkzeuge', icon = 'wrench', image = 'https://images.unsplash.com/photo-1514443031610-8c063c7a9822?w=600&q=80', color = '#f97316', gridSize = 'large', items = { { name = 'lockpick', price = 800, limit = 5, label = 'Dietrich' }, { name = 'advancedlockpick', price = 2500, limit = 2, label = 'Profi-Dietrich' }, }, }, } -- ===================== -- KAUFLIMITS -- ===================== -- 'restart' = Limits reset bei Server-Restart (kein DB nötig) -- 'daily' = Limits reset täglich um Mitternacht (braucht DB) -- 'interval' = Limits reset alle X Minuten (kein DB nötig) Config.LimitResetMode = 'interval' Config.LimitResetIntervalMinutes = 120 -- Nur bei 'interval' Modus