3M Stands — Simple Player-Owned Stalls (ESX)
Lightweight, clean, and practical: place world stands that players can buy, stock with their own items, and sell to others through a modern NUI. No database setup — the script persists to a JSON file. Built for stability and low overhead.
Features
ESX only (uses
exports["es_extended"]).World Stands: spawns the prop
prop_hotdogstand_01at configured locations with heading.Ownership:
Buy a stand for
Config.ShopPrice(cash).Sell the stand back to the city for
Config.SellPrice.Ownership saved in
standovi/standovi.json.
Stock & Sales:
Owner moves items from their ox inventory into the stand, sets price and quantity.
Players purchase items directly from the stand UI (cash).
Earned money accumulates in the stand’s balance; owner can withdraw cash.
Safe Item Rules:
Blacklist (
Config.BlacklistItems) and auto-block weapons (Config.BlockWeapons = true).Server-side checks for stock, price, balance, and ownership.
UI / UX:
Clean NUI with tabs: Shop, Manage, Inventory.
Ox Target sphere interaction at each stand (
open_standlabel).Localized strings (EN/HR) via
locale.lua.
Persistence:
JSON file storage:
standovi.jsonkeeps owner, items and stand cash.
Notifications:
okokNotify(recommended) or ESX notify (Config.Notify).can be changed to your notify script of desire in notify.lua
Performance:
Very low client CPU usage; simple prop + zone approach.