237 lines
11 KiB
Lua
237 lines
11 KiB
Lua
--──────────────────────────────────────────────────────────────────────────────
|
||
-- Quasar Store · Configuration Guidelines
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
-- This configuration file defines all adjustable parameters for the script.
|
||
-- Comments are standardized to help you identify which sections you can safely edit.
|
||
--
|
||
-- • [EDIT] – Safe for users to modify. Adjust these values as needed.
|
||
-- • [INFO] – Informational note describing what the variable or block does.
|
||
-- • [ADV] – Advanced settings. Change only if you understand the logic behind it.
|
||
-- • [CORE] – Core functionality. Do not modify unless you are a developer.
|
||
-- • [AUTO] – Automatically handled by the system. Never edit manually.
|
||
--
|
||
-- Always make a backup before editing configuration files.
|
||
-- Incorrect changes in [CORE] or [AUTO] sections can break the resource.
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
-- Crafting System [EDIT]
|
||
-- [INFO] Independent crafting, no DLC required. Supports success chance, and
|
||
-- (opcional) reputación en QBCore para bloquear/mostrar recetas.
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
Config.Crafting = true -- [EDIT] Toggle the crafting system on/off
|
||
|
||
--[[ [INFO]
|
||
Noteworthy features:
|
||
- Per-item success chance (1–100%)
|
||
- Reputation-based visibility (QBCore): 'craftingrep' / 'attachmentcraftingrep'
|
||
- Configure 'rep' fields and thresholds per your server design.
|
||
]]
|
||
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
-- Reputation (QBCore only) [EDIT]
|
||
-- [INFO] Gate items behind reputation levels. Only for QBCore frameworks.
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
Config.CraftingReputation = false -- [EDIT] Enable reputation gating (QBCore)
|
||
Config.ThresholdItems = false -- [EDIT] Show items only if rep >= threshold (QBCore)
|
||
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
-- Example Item Entry (Reference) [INFO]
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
--[[
|
||
[1] = {
|
||
name = "weapon_pistol",
|
||
amount = 50,
|
||
info = {},
|
||
costs = {
|
||
["iron"] = 80,
|
||
["metalscrap"] = 120,
|
||
["rubber"] = 8,
|
||
["steel"] = 133,
|
||
["lockpick"] = 5,
|
||
},
|
||
type = "weapon", -- "item" | "weapon"
|
||
slot = 1,
|
||
rep = 'attachmentcraftingrep', -- QBCore only
|
||
points = 1, -- QBCore only (reward on craft)
|
||
threshold = 0, -- QBCore only (visibility)
|
||
time = 5500, -- ms
|
||
chance = 100 -- 1..100 success probability
|
||
},
|
||
]]
|
||
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
-- External Crafting Event (Sample) [ADV]
|
||
-- [INFO] Example to open a custom crafting menu from another script/event.
|
||
-- ⚠ Posible typo: export 'SetUpCrafing' → suele ser 'SetUpCrafting'. Mantengo tu nombre.
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
function OpenCrafting()
|
||
local CustomCrafting = {
|
||
[1] = {
|
||
name = 'weapon_pistol',
|
||
amount = 50,
|
||
info = {},
|
||
costs = { ['tosti'] = 1 },
|
||
type = 'weapon',
|
||
slot = 1,
|
||
rep = 'attachmentcraftingrep',
|
||
points = 1,
|
||
threshold = 0,
|
||
time = 5500,
|
||
chance = 100
|
||
},
|
||
[2] = {
|
||
name = 'water_bottle',
|
||
amount = 1,
|
||
info = {},
|
||
costs = { ['tosti'] = 1 },
|
||
type = 'item',
|
||
slot = 2,
|
||
rep = 'attachmentcraftingrep',
|
||
points = 1,
|
||
threshold = 0,
|
||
time = 8500,
|
||
chance = 100
|
||
},
|
||
}
|
||
|
||
local items = exports['qs-inventory']:SetUpCrafing(CustomCrafting) -- [INFO] Revisa el nombre del export si fuera necesario.
|
||
local crafting = { label = 'Craft', items = items }
|
||
|
||
TriggerServerEvent('inventory:server:SetInventoryItems', items)
|
||
TriggerServerEvent('inventory:server:OpenInventory', 'customcrafting', crafting.label, crafting)
|
||
end
|
||
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
-- Crafting Tables [EDIT]
|
||
-- [INFO] Define mesas de crafteo por job/ubicación, con blip y recetas propias.
|
||
--──────────────────────────────────────────────────────────────────────────────
|
||
Config.CraftingTables = {
|
||
-- [1] = {
|
||
-- name = 'Police Crafting',
|
||
-- isjob = 'police',
|
||
-- grades = 'all',
|
||
-- text = '[E] - Police Craft',
|
||
-- blip = {
|
||
-- enabled = true,
|
||
-- title = 'Police Crafting',
|
||
-- scale = 1.0,
|
||
-- display = 4,
|
||
-- colour = 0,
|
||
-- id = 365
|
||
-- },
|
||
-- location = vec3(459.771423, -989.050537, 24.898926),
|
||
-- items = {
|
||
-- [1] = {
|
||
-- name = 'weapon_pistol',
|
||
-- amount = 50,
|
||
-- info = {},
|
||
-- costs = {
|
||
-- ['iron'] = 80,
|
||
-- ['metalscrap'] = 70,
|
||
-- ['rubber'] = 8,
|
||
-- ['steel'] = 60,
|
||
-- ['lockpick'] = 5,
|
||
-- },
|
||
-- type = 'weapon',
|
||
-- slot = 1,
|
||
-- rep = 'attachmentcraftingrep',
|
||
-- points = 1,
|
||
-- threshold = 0,
|
||
-- time = 5500,
|
||
-- chance = 100
|
||
-- },
|
||
-- [2] = {
|
||
-- name = 'weapon_smg',
|
||
-- amount = 1,
|
||
-- info = {},
|
||
-- costs = {
|
||
-- ['iron'] = 80,
|
||
-- ['metalscrap'] = 120,
|
||
-- ['rubber'] = 10,
|
||
-- ['steel'] = 65,
|
||
-- ['lockpick'] = 10,
|
||
-- },
|
||
-- type = 'weapon',
|
||
-- slot = 2,
|
||
-- rep = 'attachmentcraftingrep',
|
||
-- points = 1,
|
||
-- threshold = 0,
|
||
-- time = 8500,
|
||
-- chance = 100
|
||
-- },
|
||
-- [3] = {
|
||
-- name = 'weapon_carbinerifle',
|
||
-- amount = 1,
|
||
-- info = {},
|
||
-- costs = {
|
||
-- ['iron'] = 120,
|
||
-- ['metalscrap'] = 120,
|
||
-- ['rubber'] = 20,
|
||
-- ['steel'] = 90,
|
||
-- ['lockpick'] = 14,
|
||
-- },
|
||
-- type = 'weapon',
|
||
-- slot = 3,
|
||
-- rep = 'craftingrep',
|
||
-- points = 2,
|
||
-- threshold = 0,
|
||
-- time = 12000,
|
||
-- chance = 100
|
||
-- }
|
||
-- }
|
||
-- },
|
||
-- [2] = {
|
||
-- name = 'Attachment Crafting',
|
||
-- isjob = false,
|
||
-- grades = 'all',
|
||
-- text = '[E] - Craft Attachment',
|
||
-- blip = {
|
||
-- enabled = true,
|
||
-- title = 'Attachment Crafting',
|
||
-- scale = 1.0,
|
||
-- display = 4,
|
||
-- colour = 0,
|
||
-- id = 365
|
||
-- },
|
||
-- location = vec3(90.303299, 3745.503418, 39.771484),
|
||
-- items = {
|
||
-- [1] = {
|
||
-- name = 'pistol_extendedclip',
|
||
-- amount = 50,
|
||
-- info = {},
|
||
-- costs = {
|
||
-- ['metalscrap'] = 140,
|
||
-- ['steel'] = 250,
|
||
-- ['rubber'] = 60,
|
||
-- },
|
||
-- type = 'item',
|
||
-- slot = 1,
|
||
-- rep = 'attachmentcraftingrep',
|
||
-- points = 1,
|
||
-- threshold = 0,
|
||
-- time = 8000,
|
||
-- chance = 90
|
||
-- },
|
||
-- [2] = {
|
||
-- name = 'pistol_suppressor',
|
||
-- amount = 50,
|
||
-- info = {},
|
||
-- costs = {
|
||
-- ['metalscrap'] = 165,
|
||
-- ['steel'] = 285,
|
||
-- ['rubber'] = 75,
|
||
-- },
|
||
-- type = 'item',
|
||
-- slot = 2,
|
||
-- rep = 'attachmentcraftingrep',
|
||
-- points = 1,
|
||
-- threshold = 0,
|
||
-- time = 8000,
|
||
-- chance = 90
|
||
-- },
|
||
-- }
|
||
-- },
|
||
-- Continue with the same structure for the other Crafting Tables...
|
||
}
|