# Script Integrations

If you want to use your own server scripts, the main integration locations are:

* Inventory: `modules/inventory/server.lua`
* Target: `modules/target/client.lua`
* Notify, text UI, and vehicle keys: `modules/utils/client.lua`
* Framework bridge files: `modules/bridge/esx`, `modules/bridge/qb`, and `modules/bridge/qbx`

## Inventory Integration

File: `modules/inventory/server.lua`

This version exposes a simple item reward helper:

* Give item

If your server uses a custom inventory, replace the give item function here.

Example:

```lua
function Inventory.GiveItem(source, itemName, count)
    return exports["my_inventory"]:AddItem(source, itemName, count)
end
```

## Target Integration

File: `modules/target/client.lua`

By default the script supports:

* `ox_target`
* `qb-target`

If you use another target script, replace the entity add/remove logic here.

## Notify, Text UI, Vehicle Keys

File: `modules/utils/client.lua`

Common changes:

* Replace `lib.notify`
* Replace `lib.showTextUI` and `lib.hideTextUI`
* Replace the vehicle key event

Notify example:

```lua
function Utils.Notify(title, type, duration, description)
    exports["my_notify"]:Send({
        title = title,
        description = description,
        type = type,
        duration = duration
    })
end
```

## Progressbar Integration

This version does not provide one central `progressBar()` helper file like some newer 0Resmon resources.

If you want to replace action timing with your own progressbar script, you will need to adapt the relevant task flow inside:

* `client.lua`
* `modules/utils/client.lua`

## Framework Integration

Files:

* `modules/bridge/esx/*`
* `modules/bridge/qb/*`
* `modules/bridge/qbx/*`

Use these files if your framework events or player access functions are customized.
