🛒 Shop System
Ein hochwertiges, modernes Spieler-Laden-System für RedM mit Glasmorphismus-UI und umfangreichen Verwaltungsfunktionen.
✨ Features
🏪 Spieler-eigene Läden
- Kaufsystem - Spieler können Läden für konfigurierbaren Preis kaufen
- Dynamisches Inventar - Besitzer entscheidet, was verkauft wird
- Verwaltungs-Dashboard - Gesicherter Bereich für Geschäftsführung
💼 Shop-Verwaltung
- Lager befüllen - Items aus eigenem Inventar hinzufügen
- Preise setzen - Individuelle Preise für jedes Item
- Kategorisierung - Items per Dropdown kategorisieren (Essen, Waffen, Sonstiges, etc.)
- Bearbeitung - Preis und Kategorie jederzeit ändern
- Entfernung - Items aus dem Shop entfernen
- Kasse - Einnahmen direkt in die "Shop-Kasse", jederzeit abhebbar
⏱️ Inaktivitäts-System
- Auto-Wipe - Läden werden nach Inaktivität automatisch freigegeben
- Aufräumung - Entfernt Besitzer und leert Inventar
- Aktivitäts-Tracking - Aktionen wie Items hinzufügen oder Geld abheben setzen Timer zurück
🖥️ Benutzeroberfläche
- Modernes Design - Glasmorphismus-Ästhetik mit dunklen Transparenzen
- Echtzeit-Updates - Lager und Kasse aktualisieren sich sofort
- Zwei Ansichten - "Shop-Ansicht" für Kunden, "Verwaltungs-Ansicht" für Besitzer
📥 Installation
- Kopiere
mulderdev_shopin deinenresourcesOrdner - Importiere
install.sqlin deine Datenbank - Passe
config.luaan (sieheConfig.MaxInactivityDays) - Füge
ensure mulderdev_shopzu deinerserver.cfghinzu
Upgrade von V1
ALTER TABLE `mulderdev_shops` ADD COLUMN `last_active` TIMESTAMP DEFAULT CURRENT_TIMESTAMP;
ALTER TABLE `mulderdev_shop_inventory` ADD COLUMN `category` varchar(50) DEFAULT 'misc';
⚙️ Konfiguration
Allgemeine Einstellungen
Config.CanBuyShops = true -- Spieler-Eigentum aktivieren
Config.DefaultShopPrice = 1000.0
Config.MaxInactivityDays = 14 -- Auto-Wipe nach 14 Tagen Inaktivität
Config.Locale = 'de' -- 'de' oder 'en'
Kategorien hinzufügen
Config.Categories = {
['food'] = { label = "Essen & Trinken", icon = "fas fa-utensils" },
['rare'] = { label = "Seltenes", icon = "fas fa-gem" },
}
🎮 Nutzung
🛍️ Items im Shop kaufen (Als Kunde)
- Shop finden - Gehe zu einem Shop-Marker auf der Karte
- Shop öffnen - Drücke [G] um das Shop-Menü zu öffnen
- Kategorien durchsuchen - Klicke auf die gewünschte Kategorie (z.B. "Essen & Trinken", "Waffen")
- Item auswählen - Klicke auf das gewünschte Item
- Menge wählen - Gib die gewünschte Anzahl ein
- Kaufen - Klicke auf "Kaufen" um den Kauf abzuschließen
Hinweis: Der Kaufpreis wird dir vor dem Kauf angezeigt. Das Geld wird automatisch von deinem Charakter abgezogen.
🏪 Einen Shop kaufen
Um einen eigenen Shop zu erwerben:
- Freien Shop finden - Gehe zu einem Shop ohne Besitzer (erkennbar am "Zu Verkaufen" Schild)
- Shop öffnen - Drücke [G]
- Kaufen klicken - Im Menü erscheint ein "Shop Kaufen" Button mit dem Preis
- Bestätigen - Klicke auf den Button um den Shop zu kaufen
Voraussetzung: Du brauchst genügend Geld in deinem Inventar (Standard: $1000, konfigurierbar in
Config.DefaultShopPrice)
🔧 Shop-Besitzer Verwaltung
- Shop verwalten - Öffne deinen Shop und klicke "Verwaltung" (oben links)
- Item hinzufügen - Klicke auf ein Item in "Dein Inventar", setze Menge/Preis/Kategorie
- Item bearbeiten - Klicke auf das Stift-Icon
- Item entfernen - Klicke auf das Papierkorb-Icon
- Abheben - Siehe "Shop Kasse" und hebe deine Einnahmen ab
⚙️ Konfiguration (Detailliert)
Kaufsystem aktivieren/deaktivieren
Config.CanBuyShops = true -- true = Spieler können Shops kaufen
-- false = Shops sind nicht kaufbar
Wichtig: Wenn
Config.CanBuyShops = falseist, können Spieler keine Shops kaufen. Der "Shop Kaufen" Button wird dann nicht angezeigt.
Shop-Kaufpreis festlegen
Config.DefaultShopPrice = 1000.0 -- Preis in Dollar/Währungseinheit
Du kannst auch individuelle Preise pro Shop setzen:
Config.Shops = {
['valentine_general'] = {
name = "Valentine General Store",
price = 2500.0, -- Dieser Shop kostet $2500
-- ... weitere Einstellungen
},
['rhodes_saloon'] = {
name = "Rhodes Saloon",
price = 5000.0, -- Dieser Shop kostet $5000
-- ... weitere Einstellungen
},
}
Inaktivitäts-Zeitraum
Config.MaxInactivityDays = 14 -- Nach 14 Tagen ohne Aktivität wird der Shop freigegeben
Sprache einstellen
Config.Locale = 'de' -- 'de' für Deutsch, 'en' für Englisch
📋 Voraussetzungen
- VORP Core
- VORP Inventory
- oxmysql