Zum Inhalt springen

Anpassung

Eine einzige Datei steuert alles, was du anpassen kannst: config.lua. Der Rest besteht aus den Benutzeroberflächen der App und der escrow-geschützten Logik.


DateiWas sie entscheidetBearbeitbar?
config.luaFramework, Bildpfad, Ablaufzeit, Zahlungen, Standort, Marker, Blip, Angestellter, Blacklist, alle Texte, App-NameJa
pawnshop.sqlDie drei Tabellen, einmalig zu importierenJa
web/index.html, web/styles.css, web/script.jsBildschirme, Layout und Beschriftungen der App—
web/assets/pawn.pngDas App-IconJa
web/assets/fries.pngDas Fallback-Bild, wenn ein Item kein Bild hatJa
client/main.lua, server/main.luaDie interne LogikEscrowed

Es gibt keinen Bridge-Ordner und keinen Locales-Ordner: Das Framework ist eine Option weiter unten und die Texte befinden sich direkt in config.lua.


OptionWas sie machtStandard
Config.Framework"esx" oder "qb", kleingeschrieben. Nutze bei QBox "qb" — QBox führt QBCore-Ressourcen über seine Kompatibilität aus"esx"
Config.InventoryImagePathOrdner, aus dem Item-Bilder gelesen werden, als resource/folder/. Bei qb-inventory "qb-inventory/html/images/""ox_inventory/web/images/"
Config.ExpireTage, die ein Angebot online bleibt. Eine Preisänderung setzt den Zähler zurück7

OptionWas sie machtStandard
Config.Banktrue: Käufer zahlen von der Bank, Verkäufer lassen auf die Bank auszahlen. false: Beide nutzen das Item in Config.Moneytrue
Config.MoneyDas Inventar-Item, das als Geld dient, wenn Bank aus ist — money, black_money oder ein eigenes"money"

Wenn Bank deaktiviert ist, muss das Geld ein echtes Inventar-Item sein, wie es bei ox_inventory der Fall ist. Im Standardinventar von ESX sowie auf QBCore ist Bargeld ein Konto und kein Item; belasse dort Config.Bank = true.

Geld aus Verkäufen landet nicht direkt beim Verkäufer. Es wird dem Guthaben unter Pending in der App gutgeschrieben und muss manuell per Auszahlungs-Button übertragen werden.


OptionWas sie machtStandard
Config.RequireLocationtrue: Erstellen und Kaufen von Angeboten muss vor Ort im Pfandleihhaus erfolgenfalse
Config.PawnShopLocationPosition des Pfandleihhauses: x, y, z und Blickrichtung des Peds412.17, 315.11, 103.13, Heading 194.62
Config.InteractionDistanceMaximaler Abstand in Metern zum Drücken von E. Der Server prüft dies ebenfalls1.0
Config.MarkerMarker an der Tür: Type, Scale (x, y, z) und Color (r, g, b, a)Typ 20, dunkel blaugrau
Config.BlipWegpunkt-Blip: Sprite, Color, Scale480, 32, 1
Config.NPCPed-Modell (Model) des Angestellten und Übergabe-Animation (Dict und Name)a_m_m_business_01, mp_common / givetake1_a

Ablauf bei aktivem RequireLocation: Der Spieler füllt das Angebot aus oder tippt auf Kaufen, das Telefon startet eine Route zum Pfandleihhaus und der Marker erscheint, sobald man sich auf 20 Meter nähert. Drückt man am Marker die Taste E, führt der Angestellte die Übergabeanimation aus und das Geschäft ist abgeschlossen.

Blip und Marker existieren nur, solange der Spieler dort einen Vorgang abschließen muss; es gibt keinen permanenten Blip auf der Karte. Bei deaktiviertem RequireLocation entfallen diese Funktionen komplett.

Config.Blip.Name wird nicht für das Label des Blips genutzt — dieser Name stammt aus Config.Messages.blip_name.


Config.BlackList ist eine Liste von Item-Namen, die niemals angeboten werden dürfen. Sie werden in der Auswahlliste ausgeblendet, vom Server abgelehnt und jedes bereits bestehende Angebot eines solchen Items wird samt Items vom Marktplatz gelöscht, sobald das nächste Mal jemand die App öffnet. Ausgeliefert mit burger und weapon_appistol als Beispielen.


Es gibt keinen Locales-Ordner. Alle anpassbaren Texte liegen auf Englisch direkt in config.lua:

OptionWas darin steht
Config.locales.en.app_nameName der App auf dem Smartphone sowie Titel ihrer Benachrichtigungen
Config.locales.en.app_descriptionUntertitel im App Store
Config.MessagesJede Benachrichtigung: Angebot erstellt, gekauft, gelöscht, fehlende Felder, Fehler, “Gehe zum Pfandleihhaus”, die Taste E und Blip-Name

Um in einer anderen Sprache zu spielen, übersetze diese Texte direkt an Ort und Stelle. Einige wenige Serverantworten — “Insufficient items”, “Inventory full”, “This item cannot be listed for sale”, “You do not own this offer” und ähnliche — sind fest in der escrow-geschützten Serverdatei hinterlegt und bleiben auf Englisch.

Auf ESX erscheinen Benachrichtigungen als lb-phone-Mitteilungen der App. Auf QBCore wird das eigene Benachrichtigungssystem des Frameworks genutzt.


Die App lädt jedes Item als <Config.InventoryImagePath><item name>.png direkt aus deiner Inventar-Ressource. Fehlt ein Bild, wird stattdessen web/assets/fries.png als Platzhalter angezeigt; ersetze diese Datei, wenn du eine andere Standardgrafik wünschst.