> For the complete documentation index, see [llms.txt](https://giftspackaging.killstore.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://giftspackaging.killstore.net/installation/dependency.md).

# Dependency

## ProgressBars

An optional, but highly recommended dependency is our own **ks ProgressBar**. We’ve taken the time to provide you with a custom progress bar designed specifically for all our scripts *(included in your purchase)*. This progress bar integrates seamlessly with the visual style of our scripts, enhancing the overall user experience.

Please note that **ks ProgressBar version 2.0 or higher** is required.

\*If you want to modify it, you can do it yourself in **Ks\_Gift\_Packaging/utils/cl\_utils.lua**.

## Inventory

The **GreetingCard system** is designed to store items along with metadata containing the personalized message. Currently, it is integrated with specific inventory systems. If you are using a custom inventory, you will need to coordinate with your administrator to ensure compatibility.

Please note that we **do not provide support** for custom inventories, as they may vary depending on version or other factors.

## CreateCardMessage(...)

```
Ks_Gift_Packaging/Framework/sv_Custom.lua:CreateCardMessage(...)
```

In the `CreateCardMessage(..)`function, is used to give the player a 'greetingcard' item and Simultaneously adds metadata to the item containing the custom message. This function is designed to integrate a message into the item's metadata with the "if inventory then" condition.

This is currently set up for `ox_inventory` and `qb-inventory` To add new ones, you'll need to follow the next integration step.

Make sure to consult the documentation for your inventory system to verify that the correct format and methods are used for item integration.

```lua
function CreateCardMessage(source, greetingcard, message)
  local metamsg = {
      message = message
  }

  if inventory then   
      GivePlayerItem(source, greetingcard, 1, metamsg)
  else
      Citizen.Wait(2000)
      TriggerClientEvent('ks-Gifts:client:OpenCard', source, message)
  end

end
```
