LRC-Gunsmith | Gunsmith Shop [RSG-Core & VORP]
Features:
Dual-framework support — automatically detects and loads RSG-Core or VORP at runtime.
Fully custom NUI gunsmith interface with item preview panel and category filtering
NPC shopkeeper spawned at configurable coordinates per shop
Configurable blip per shop with custom sprite, color modifier, and map label
Multi-shop support — add as many gunsmith locations as needed
Item images pulled from your inventory resource at runtime via configurable path
Purchase lock system — prevents duplicate transactions and exploit attempts
Locale support — English and Romanian included, extendable
Dependencies: RSG-Core or VORP
This resource is protected using Cfx's Asset Escrow system, you only have access to configuration files.
LRC = {}
-- LANGUAGE: "en" = English | "ro" = Romanian
LRC.locale = "en"
-- IMAGE PATH: Where item images are loaded from.
-- RSG-Core → "nui://rsg-inventory/html/images/{name}.png"
-- VORP → "nui://vorp_inventory/html/img/items/{name}.png"
LRC.imagePath = "nui://rsg-inventory/html/images/{name}.png"
-- ── CATEGORIES ───────────────────────────────────
-- These are the filter tabs shown in the UI.
-- 'type' must match the 'category' field on each item below.
-- you can change the labels to whatever you want, just make sure to keep the same 'type' for each category.
LRC.categories = {
{ type = "weapons", label = "Weapons" },
{ type = "melee", label = "Melee" },
{ type = "other", label = "Other" },
}
-- ── SHOPS ───────────────────────────────────────
-- You can make as many shop locations as you want.
LRC.shops = {
-- ┌────────────────────────────────────────────────┐
-- │ SHOP 1 — Example: Valentine Gunsmith │
-- └────────────────────────────────────────────────┘
{
name = "Valentine",
-- blip + prompt coords
coords = vector3(-281.1378, 780.7042, 119.5271),
-- spawn coords for NPC
spawn = vector4(-281.1638, 778.8755, 119.5040, 2.2484),
-- blip: Map marker settings
blip = {
show = true,
sprite = "blip_shop_gunsmith", -- blip icon
modifier = "BLIP_MODIFIER_MP_COLOR_32", -- blip color modifier
label = "Gunsmith", -- text shown on map
},
-- npc: The shopkeeper ped model
npc = { model = "u_m_m_nbxgeneralstoreowner_01" },
-- items: The inventory of this shop. Add as many items as you want.
items = {
{
name = "weapon_revolver_cattleman",
label = "Cattleman Revolver",
category = "weapons",
price = 100, -- weapon price
isWeapon = true, --
ammo = {
name = "ammo_box_revolver", -- ammo item name (must exist in your inventory/items)
label = "Revolver Ammo",
price = 20, -- ammo price
},
},
{
name = "weapon_revolver_schofield",
label = "Schofield Revolver",
category = "weapons",
price = 150,
isWeapon = true,
ammo = {
name = "ammo_box_revolver",
label = "Revolver Ammo",
price = 20,
},
},
{
name = "weapon_repeater_carbine",
label = "Carbine Repeater",
category = "weapons",
price = 250,
isWeapon = true,
ammo = {
name = "ammo_box_repeater",
label = "Repeater Ammo",
price = 25,
},
},
{
name = "weapon_revolver_lemat",
label = "Lemat Revolver",
category = "weapons",
price = 190,
isWeapon = true,
ammo = {
name = "ammo_box_revolver",
label = "Revolver Ammo",
price = 20,
},
},
{
name = "weapon_shotgun_doublebarrel",
label = "Double Barrel Shotgun",
category = "weapons",
price = 190,
isWeapon = true,
ammo = {
name = "ammo_box_shotgun",
label = "Shotgun Ammo",
price = 25,
},
},
-- Melee
{
name = "weapon_melee_knife",
label = "Knife",
category = "melee",
price = 10,
isWeapon = true,
},
{
name = "weapon_melee_lantern",
label = "Lantern",
category = "melee",
price = 5,
isWeapon = true,
},
{
name = "weapon_melee_hatchet",
label = "Hatchet",
category = "melee",
price = 20,
isWeapon = true,
},
{
name = "weapon_melee_torch",
label = "Torch",
category = "melee",
price = 12,
isWeapon = true,
},
-- Other items (whatever you want)
{
name = "ammomolotov",
label = "Molotov Cocktail",
category = "other",
price = 10,
isWeapon = false,
},
{
name = "weapon_lasso",
label = "Lasso",
category = "other",
price = 5,
isWeapon = false,
},
{
name = "bandage",
label = "Bandage",
category = "other",
price = 1,
isWeapon = false,
},
},
},
-- ┌────────────────────────────────────────────────────────┐
-- │ SHOP 2 — Add more shops by copying the block above │
-- └────────────────────────────────────────────────────────┘
--[[
{
name = "Rhodes Gunsmith",
coords = vector3(1328.56, -1292.63, 77.02),
spawn = vector4(1330.07, -1293.73, 77.01, 65.53),
blip = {
show = true,
sprite = "blip_shop_ammo",
modifier = "BLIP_MODIFIER_MP_COLOR_32",
label = "Gunsmith",
},
npc = { model = "u_m_m_nbxgeneralstoreowner_01" },
items = {
-- add items here
},
},
]]
}