342 lines
18 KiB
Lua
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!',
|
|
}
|