mirror of
https://github.com/jimathy/jim_bridge.git
synced 2026-08-17 05:56:02 +01:00
- seperated the 2000+ lines in ReadMe.md into seperate files. - useful if things expand - better readability for users - more organised layout
3.8 KiB
3.8 KiB
inventories.lua
These functions manage inventory locking, item checking, and player inventory retrieval.
-
lockInv(toggle)
- Locks or unlocks the player's inventory.
- Freezes/unfreezes movement and toggles hotbar state.
- Example:
lockInv(true) -- Lock inventory lockInv(false) -- Unlock inventory
-
hasItem(items, amount, src)
- Checks if a player has the specified item(s) in sufficient quantity.
- Returns:
boolean: Whether the player has the item(s).table: Details of available item counts.
- Example:
local hasAll, details = hasItem({"health_potion", "mana_potion"}, 2, playerId) if hasAll then -- Proceed with action else -- Inform the player about missing items end
-
getPlayerInv(src)
- Retrieves the player’s current inventory.
- May be used for inventory UI, logging, or crafting systems.
- Example:
local inventory = getPlayerInv(playerId) for k, item in pairs(inventory) do print(item.name, item.amount) end
itemcontrol.lua
This module includes a variety of utility functions for managing items in player inventories, including giving, removing, durability, and use logic.
-
createUseableItem(item, funct)
⚠️ This doesn't work for
ox_inv, you will need to add the event info to it'sitems.lua- Registers a useable item and binds it to a callback function.
- Example:
createUseableItem("bandage", function(source) -- Heal logic here end)
-
invImg(item)
- Returns the inventory image path for an item.
- Automatically grabs the inventory image link based on inventory script
- Example:
local imagePath = invImg("water_bottle") print(imagePath)
-
addItem(item, amount, info, src)
⚠️ Requires Auth callback if called from client side
- Adds a specific amount of an item to a player's inventory.
- Automatically attempts to add items using detected inventory script
- Example:
-- Client Side addItem("lockpick", 3, {}) -- Server Side addItem("lockpick", 3, {}, source)
-
removeItem(item, amount, src, slot)
- Removes a specific amount of an item from a player’s inventory.
- Automatically attempts to remove item using detected inventory script
- Example:
-- Client Side removeItem( "ammo_pistol", 30, nil, slot --[[optional]]-- ) -- Server Side removeItem( "ammo_pistol", 30, source, slot --[[optional]]-- )
-
dupeWarn(src, item, amount)
- Logs or handles a potential duplication exploit involving an item.
- This is called automatically if a player has been triggered exploit detection
- Disabled if debugMode is enabled
-
breakTool(data)
- Breaks a tool or item, often due to exceeding durability.
- Example:
breakTool({ item = "drill", damage = 10 })
-
getDurability(item)
- Returns the current durability value of a given item.
- Searched for the lowest slot number (eg. slot 1) and retreives that items durability
- Example:
local durability, slot = getDurability("drill") if durability then print("Durability:", durability) print("Slot:", slot) end
-
canCarry(itemTable, src)
⚠️ Currently server side only
- Checks if a player can carry the item(s) specified in
itemTable. - Example:
local carryCheck = canCarry({ ["health_potion"] = 2, ["mana_potion"] = 3 }, playerId) if carryCheck["health_potion"] and carryCheck["mana_potion"] then -- Player can carry items. else -- Notify player. end
- Checks if a player can carry the item(s) specified in