Crafting
crafting.lua
These functions support crafting logic, such as opening crafting menus, handling multi-craft operations, and creating item data from recipes.
craftingMenu(data)
Opens a menu for selecting the quantity to craft.
Presents the player with multiple crafting quantities based on Config.Crafting.MultiCraftAmounts.
Parameters:
item(string): The item to craft.craft(table): The crafting recipe.craftable(table): Crafting options.coords(vector3): Where crafting occurs.stashName(string): The stash name(s) for item availability.onBack(function): Callback when returning.metadata(table, optional): Metadata for the crafted item.
Example:
craftingMenu({
craftable = {
Header = "Weapon Crafting",
Recipes = {
[1] = {
["weapon_pistol"] = { ["steel"] = 5, ["plastic"] = 2 },
amount = 1,
},
-- More recipes...
},
Anims = {
animDict = "amb@prop_human_parking_meter@male@idle_a",
anim = "idle_a",
},
},
coords = vector3(100.0, 200.0, 300.0),
stashTable = "crafting_stash",
job = "mechanic",
onBack = function() print("Returning to previous menu") end,
})Last updated