2026-04-15 23:50:01 +02:00

342 lines
18 KiB
Lua

Config = {}
-- =====================
-- GENERAL
-- =====================
Config.WebhookURL = "https://discord.com/api/webhooks/1490364101682270358/8eXKwD-woBgZEsokvOenWTZBSDs1ajRpmqu-tTTS3SHoD-as2yO1mVuTzQfnPi1O0ssV" -- Discord Webhook URL (leer = deaktiviert)
Config.ShopName = "VIP SHOP" -- Anzeigename im UI
Config.LogoURL = "" -- Optional: URL zu einem Logo-Bild
-- =====================
-- THEME
-- =====================
Config.Theme = {
accent = '#f59e0b', -- Hauptfarbe (Gold/Amber)
accentLight = '#fbbf24', -- Hoverfarbe
}
-- =====================
-- KEYBIND
-- =====================
Config.KeyBind = {
key = 'F5', -- Standard-Taste (Spieler kann im Keybind-Menue aendern)
description = 'Coinshop öffnen', -- Beschreibung im Keybind-Menue
}
-- =====================
-- TEBEX (manueller Code-Redeem)
-- =====================
Config.Tebex = {
enabled = true, -- Tebex Redeem aktivieren/deaktivieren
apiKey = 'uJKATjAeO2X6NNDYvpt6bESwi5qMNCD2', -- Tebex Secret Key (Plugin API)
identifierType = 'license', -- 'steam' oder 'license'
storeUrl = 'https://mercyv.tebex.io', -- Tebex Store URL (wird geoeffnet wenn man auf Coins klickt)
}
-- =====================
-- PLAYTIME BONUS
-- =====================
Config.PlaytimeBonus = {
enabled = true, -- Playtime-Coins aktivieren/deaktivieren
coins = 10, -- Coins pro Intervall
intervalMinutes = 60, -- Alle X Minuten
}
-- =====================
-- NOTIFICATIONS
-- =====================
Config.Notification = {
event = 'hex_4_hud:notify',
title = 'Coinshop',
duration = 3000,
}
-- =====================
-- TESTFAHRT
-- =====================
Config.TestDrive = {
enabled = true,
duration = 60, -- Dauer in Sekunden
spawnCoords = vector4(-1643.0, -3144.0, 13.99, 326.0), -- LSIA Flughafen Landebahn
}
-- =====================
-- KAUFBESTAETIGUNG
-- =====================
Config.ConfirmPopup = true -- true = Popup vor jedem Kauf, false = direkt kaufen
-- =====================
-- ADMIN
-- =====================
Config.Admin = {
acePermission = 'coinshop.admin', -- ACE fuer Bypass-Modus + Commands
commandName = 'coinadmin', -- /coinadmin add|remove <server_id> <amount>
}
-- =====================
-- KAUFHISTORIE
-- =====================
Config.HistoryLimit = 50 -- Max angezeigte Transaktionen
-- =====================
-- DEFAULT GARAGE
-- =====================
Config.DefaultGarage = 'Garage A' -- In welche Garage gekaufte Fahrzeuge kommen
-- =====================
-- WOECHENTLICHE FAHRZEUGE (mehrere zur Auswahl, alle mit Rabatt)
-- =====================
Config.WeeklyVehicles = {
enabled = true,
resetDay = 1, -- 1=Montag, 7=Sonntag
resetHour = 0, -- Uhrzeit (0-23)
discount = 20, -- Rabatt in % (0 = kein Rabatt)
amountPerWeek = 3, -- Wie viele Autos pro Woche angezeigt werden
pool = {
{ model = 'gbmilano', label = 'Milano', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/gbmilano.png', description = 'Exklusiver Super Sport' },
{ model = 'gbmogulrs', label = 'Mogul RS', price = 2200, image = 'https://cdn.sky-systems.net/vehicles/gbmogulrs.png', description = 'Aggressiver Sportwagen' },
{ model = 'gblod4', label = 'LOD4', price = 2500, image = 'https://cdn.sky-systems.net/vehicles/gblod4.png', description = 'Cybertruck Style' },
{ model = 'zentven', label = 'Zentorno RR', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/zentven.png', description = 'Italy Luxus' },
{ model = 'torosven', label = 'Torus S', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/torosven.png', description = 'Italy SSUV' },
{ model = 'tenfhyc', label = 'TEN F RR', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/tenfvenm.png', description = 'German Power' },
{ model = 'temphyc', label = 'Tempesta', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/temphyc.png', description = 'Pure Power' },
{ model = 'elegyxa19ven', label = 'Elegy GTR', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/elegyxa19ven.png', description = 'Pure Power' },
{ model = 'dubmono', label = 'Dubsta XL', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/dubmono.png', description = 'G Wagon' },
{ model = 'abfbuff', label = 'Buffalo GTX', price = 3250, image = 'https://cdn.sky-systems.net/vehicles/abfbuff.png', description = 'GTX Power' },
{ model = 'hycadetail', label = 'Obey R3S', price = 3250, image = 'https://cdn.sky-systems.net/vehicles/hycadetail.png', description = 'R Power' },
},
}
-- =====================
-- KATEGORIEN
-- =====================
-- Typen: 'vehicle' (Garage), 'item' (Inventar), 'pack' (Bundle), 'plate' (Kennzeichen)
-- gridSize: 'small' (1 Spalte), 'medium' (2 Spalten), 'large' (ganze Breite)
-- color: Rahmenfarbe der Kachel auf der Startseite
-- image: Hintergrundbild der Kachel auf der Startseite (URL)
Config.Categories = {
-- ========== WEEKLY DEALS (als erstes!) ==========
{
id = 'weekly',
label = 'Weekly Deals',
icon = 'star',
type = 'weekly',
image = 'https://images.unsplash.com/photo-1544636331-e26879cd4d9b?w=600&q=80',
color = '#f59e0b',
gridSize = 'medium',
},
-- ========== ITEMS ==========
-- {
-- id = 'items',
-- label = 'Items',
-- icon = 'package',
-- type = 'item',
-- image = 'https://images.unsplash.com/photo-1550745165-9bc0b252726f?w=600&q=80',
-- color = '#22c55e',
-- gridSize = 'small',
-- items = {
-- { item = 'case_weapons', label = 'Waffen Case', price = 500, image = '', description = 'Case mit zufälligen Waffen', amount = 1, limited = false },
-- { item = 'case_items', label = 'Items Case', price = 350, image = '', description = 'Case mit zufälligen Items', amount = 1, limited = false },
-- { item = 'case_premium', label = 'Premium Case', price = 750, image = '', description = 'Case mit seltenen Gegenständen', amount = 1, limited = false },
-- -- Weitere Items hinzufuegen...
-- },
-- },
-- ========== CUSTOMIZE ==========
{
id = 'plates',
label = 'Customize',
icon = 'plate',
type = 'plate',
image = 'https://images.unsplash.com/photo-1626668893632-6f3a4466d22f?w=600&q=80',
color = '#8b5cf6',
gridSize = 'medium',
price = 500,
maxLength = 8,
allowedPattern = '^[A-Z0-9 ]+$',
},
-- ========== VEHICLES ==========
{
id = 'vehicles',
label = 'Vehicles',
icon = 'car',
type = 'vehicle',
image = 'https://images.unsplash.com/photo-1494976388531-d1058494cdd8?w=600&q=80',
color = '#22c55e',
gridSize = 'small',
items = {
-- Super Sport (3000-5000 Coins = 30-50€)
{ model = 'gb811s2', label = '811 S2', price = 3500, image = 'https://cdn.sky-systems.net/vehicles/gb811s2.png', description = 'Brutaler Supersportwagen', limited = false },
{ model = 'gbemerussb1', label = 'Emerus SB1', price = 3800, image = 'https://cdn.sky-systems.net/vehicles/gbemerussb1.png', description = 'Italienischer Supersport', limited = false },
{ model = 'gbmilano', label = 'Milano', price = 5000, image = 'https://cdn.sky-systems.net/vehicles/gbmilano.png', description = 'Exklusiver Super Sport', limited = true, maxStock = 5 },
{ model = 'gbtenfr', label = 'Ten FR', price = 3100, image = 'https://cdn.sky-systems.net/vehicles/gbtenfr.png', description = 'Agiler Supersportwagen', limited = false },
-- Sport (1500-2500 Coins = 15-25€)
{ model = 'gbbanshees', label = 'Banshee S', price = 1800, image = 'https://cdn.sky-systems.net/vehicles/gbbanshees.png', description = 'Klassischer Sportwagen', limited = false },
{ model = 'gstsentgts2', label = 'Sentinel GTS 2', price = 2400, image = 'https://cdn.sky-systems.net/vehicles/gstsentgts2.png', description = 'Bayrische Qualität', limited = false },
{ model = 'gbcometcl', label = 'Comet CL', price = 1600, image = 'https://cdn.sky-systems.net/vehicles/gbcometcl.png', description = 'Sportliches Coupe', limited = false },
{ model = 'gbcomets1t', label = 'Comet S1 T', price = 1900, image = 'https://cdn.sky-systems.net/vehicles/gbcomets1t.png', description = 'Comet Sport Touring', limited = false },
{ model = 'gbmogulrs', label = 'Mogul RS', price = 2200, image = 'https://cdn.sky-systems.net/vehicles/gbmogulrs.png', description = 'Aggressiver Sportwagen', limited = false },
{ model = 'gbschwartzers', label = 'Schwartzer S', price = 1900, image = 'https://cdn.sky-systems.net/vehicles/gbschwartzers.png', description = 'Deutscher Sportwagen', limited = false },
{ model = 'gbsentinelgts', label = 'Sentinel GTS', price = 1800, image = 'https://cdn.sky-systems.net/vehicles/gbsentinelgts.png', description = 'BMW-inspiriertes Coupe', limited = false },
{ model = 'gbsultanrsx', label = 'Sultan RS X', price = 2000, image = 'https://cdn.sky-systems.net/vehicles/gbsultanrsx.png', description = 'JDM Legende', limited = false },
{ model = 'gbschrauber', label = 'Schrauber', price = 1500, image = 'https://cdn.sky-systems.net/vehicles/gbschrauber.png', description = 'Oldschool Sportwagen', limited = false },
{ model = 'gbturismogt', label = 'Turismo GT', price = 1900, image = 'https://cdn.sky-systems.net/vehicles/gbturismogt.png', description = 'Klassischer GT', limited = false },
{ model = 'gbturismogts', label = 'Turismo GTS', price = 2100, image = 'https://cdn.sky-systems.net/vehicles/gbturismogts.png', description = 'GT Sport Edition', limited = false },
{ model = 'zr350piston', label = 'ZR 350', price = 2100, image = 'https://cdn.sky-systems.net/vehicles/zr350piston.png', description = 'Pure JDM Power', limited = false },
-- Sedan & Luxus (1000-5000 Coins = 10-50€)
{ model = 'gbadmiral', label = 'Admiral', price = 800, image = 'https://cdn.sky-systems.net/vehicles/gbadmiral.png', description = 'Günstige Limousine', limited = false },
{ model = 'gbimpaler', label = 'Impaler', price = 700, image = 'https://cdn.sky-systems.net/vehicles/gbimpaler.png', description = 'Amerikanische Limousine', limited = false },
{ model = 'gbkomodagt', label = 'Komoda GT', price = 1000, image = 'https://cdn.sky-systems.net/vehicles/gbkomodagt.png', description = 'Elegante Limousine', limited = false },
{ model = 'gbtahomagt', label = 'Tahoma GT', price = 1200, image = 'https://cdn.sky-systems.net/vehicles/gbtahomagt.png', description = 'Muscle-Limousine', limited = false },
{ model = 'sent5hyc', label = 'Sentinel GTS X', price = 1200, image = 'https://cdn.sky-systems.net/vehicles/sent5hyc.png', description = 'Mayrische Power', limited = false },
{ model = 'hycpargn', label = 'Paragon RR', price = 1200, image = 'https://cdn.sky-systems.net/vehicles/hycpargn.png', description = 'Luxus-Limousine', limited = false },
-- SUV (800-1800 Coins = 8-18€)
{ model = 'gbgresleystx', label = 'Gresley STX', price = 1800, image = 'https://cdn.sky-systems.net/vehicles/gbgresleystx.png', description = 'Premium SUV', limited = false },
{ model = 'gbbisonstx', label = 'Bison STX', price = 1400, image = 'https://cdn.sky-systems.net/vehicles/gbbisonstx.png', description = 'Sport-SUV', limited = false },
{ model = 'gbmojave', label = 'Mojave', price = 1500, image = 'https://cdn.sky-systems.net/vehicles/gbmojave.png', description = 'Offroad SUV', limited = false },
{ model = 'gbstarlight', label = 'Starlight', price = 1000, image = 'https://cdn.sky-systems.net/vehicles/gbstarlight.png', description = 'Kompakter SUV', limited = false },
-- Compact (500-1200 Coins = 5-12€)
{ model = 'gbbriosof', label = 'Brioso F', price = 500, image = 'https://cdn.sky-systems.net/vehicles/gbbriosof.png', description = 'Kleiner Stadtflitzer', limited = false },
{ model = 'gbclubxr', label = 'Club XR', price = 600, image = 'https://cdn.sky-systems.net/vehicles/gbclubxr.png', description = 'Sportlicher Kompaktwagen', limited = false },
{ model = 'gbirisz', label = 'Iris Z', price = 700, image = 'https://cdn.sky-systems.net/vehicles/gbirisz.png', description = 'Moderner Kleinwagen', limited = false },
{ model = 'gbvivant', label = 'Vivant', price = 500, image = 'https://cdn.sky-systems.net/vehicles/gbvivant.png', description = 'Praktischer Kompaktwagen', limited = false },
{ model = 'gbeon', label = 'Eon', price = 1200, image = 'https://cdn.sky-systems.net/vehicles/gbeon.png', description = 'Tesla Y Style Elektro', limited = false },
-- Trucks & Spezial (500-2500 Coins = 5-25€)
{ model = 'gblod4', label = 'LOD4', price = 2500, image = 'https://cdn.sky-systems.net/vehicles/gblod4.png', description = 'Cybertruck Style', limited = true, maxStock = 10 },
{ model = 'gbboxboy', label = 'Boxboy', price = 800, image = 'https://cdn.sky-systems.net/vehicles/gbboxboy.png', description = 'Kompakter Truck', limited = false },
{ model = 'gbboxboyft', label = 'Boxboy FT', price = 900, image = 'https://cdn.sky-systems.net/vehicles/gbboxboyft.png', description = 'Boxboy', limited = false },
},
},
-- ========== PACKS ==========
{
id = 'packs',
label = 'Packs',
icon = 'pack',
type = 'pack',
image = 'https://images.unsplash.com/photo-1607344645866-009c320b63e0?w=600&q=80',
color = '#ec4899',
gridSize = 'medium',
items = {
{
label = 'Starter Pack',
price = 2000,
image = 'https://images.unsplash.com/photo-1511512578047-dfb367046420?w=600&q=80',
description = 'Sportwagen',
limited = false,
contents = {
{ type = 'vehicle', model = 'gbbanshees', label = 'Banshee S' },
},
},
{
label = 'Luxus Pack',
price = 5500,
image = 'https://images.unsplash.com/photo-1560169897-fc0cdbdfa4d5?w=600&q=80',
description = 'hycpargn',
limited = true,
maxStock = 10,
contents = {
{ type = 'vehicle', model = 'hycpargn', label = 'Paragon RR' },
},
},
{
label = 'Speed Pack',
price = 4000,
image = 'https://images.unsplash.com/photo-1503376780353-7e6692767b70?w=600&q=80',
description = 'Milano',
limited = false,
contents = {
{ type = 'vehicle', model = 'gbmilano', label = 'Milano' },
},
},
},
},
}
-- =====================
-- LOCALE (alle UI-Texte)
-- =====================
Config.Locale = {
-- Allgemein
shopTitle = 'VIP SHOP',
balance = 'Balance',
coins = 'Coins',
buy = 'Kaufen',
confirm = 'Bestätigen',
cancel = 'Abbrechen',
close = 'Schließen',
search = 'Suchen...',
-- Kauf
confirmTitle = 'Kauf bestätigen',
confirmMessage = 'Möchtest du %s für %d Coins kaufen?',
balanceAfter = 'Guthaben danach',
notEnoughCoins = 'Nicht genug Coins!',
purchaseSuccess = 'Erfolgreich gekauft!',
-- Fahrzeuge
vehicleOwned = 'Fahrzeug bereits im Besitz!',
noVehicles = 'Keine Fahrzeuge vorhanden',
-- Kennzeichen
plateInvalid = 'Ungültige Zeichen im Kennzeichen!',
plateTooLong = 'Kennzeichen zu lang (max %d Zeichen)!',
plateInUse = 'Kennzeichen bereits vergeben!',
plateEmpty = 'Bitte Kennzeichen eingeben!',
selectVehicle = 'Fahrzeug auswählen',
enterPlate = 'Wunschkennzeichen eingeben',
platePrice = 'Preis: %d Coins',
currentPlate = 'Aktuell: %s',
newPlate = 'Neues Kennzeichen',
characters = '%d/%d Zeichen',
-- Historie
history = 'Kaufhistorie',
noHistory = 'Keine Käufe vorhanden',
loadHistory = 'Historie laden',
-- Weekly
weeklyDeal = 'Wochen-Angebote',
-- Status
limited = 'Limitiert',
soldOut = 'Ausverkauft',
remaining = '%d/%d verfügbar',
discount = '-%d%%',
owned = 'Im Besitz',
-- Admin
adminMode = 'Admin-Modus',
adminFree = 'Kostenlos (Admin)',
-- Tebex Redeem
redeemPlaceholder = 'Code / Tebex Payment Id',
redeem = 'Redeem',
redeemSuccess = 'Code eingelöst! +%d Coins',
redeemInvalid = 'Ungültiger oder bereits eingelöster Code!',
redeemError = 'Fehler beim Einlösen. Versuche es später erneut.',
-- Navigation
backToHome = 'Zurück',
-- Playtime
playtimeBonus = '+%d Coins in %s',
-- Packs
packContents = 'Enthält:',
-- Items
itemReceived = '%dx %s erhalten!',
-- Testfahrt
testDrive = 'Testfahrt',
testDriveActive = 'Testfahrt läuft: %ds',
testDriveEnd = 'Testfahrt beendet!',
testDriveAlready = 'Du bist bereits auf einer Testfahrt!',
}