# Installation

### DEPENDENCIES

> **REQUIRED DEPENDENCIES**

| Type                  | Resource                                                                                            | Alternatives                                                                                                           | Download                                             |
| --------------------- | --------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| Framework             | [compatibility](https://dragon-heart-studios.gitbook.io/dragonheartstudios/compatibility "mention") | <ul><li>NA</li></ul>                                                                                                   | <ul><li>(INCLUDED IN BRIDGE)</li></ul>               |
| Dispatch System       | ps-dispatch                                                                                         | [integration](https://dragon-heart-studios.gitbook.io/dragonheartstudios/scripts/dhs-pettycrime/integration "mention") | <ul><li>NA</li></ul>                                 |
| Minigame              | ox\_lib                                                                                             | [integration](https://dragon-heart-studios.gitbook.io/dragonheartstudios/scripts/dhs-pettycrime/integration "mention") | <ul><li>NA</li></ul>                                 |
| Sound                 | interact-sound                                                                                      | <ul><li>NA</li></ul>                                                                                                   | <https://github.com/plunkettscott/interact-sound>    |
| Optional Dependencies | LaundryMat MLO                                                                                      | <ul><li>NA </li></ul>                                                                                                  | <https://forum.cfx.re/t/map-free-laundromat/5295643> |

RESOURCE INSTALLATION GUIDE

> **1) RESOURCE DOWNLOAD**

{% hint style="info" %}
Download your resource from [FiveM's Keymaster](https://keymaster.fivem.net/asset-grants).
{% endhint %}

***

> **2) ADD THE ITEMS**

{% tabs %}
{% tab title="OX Inventory" %}

```lua
['ped_sign'] = {
        label = 'Pedestrian Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'Pedestrian Sign',
        client = {
            image = 'ped_sign.png'
        }
    },
    ['turn_left_sign'] = {
        label = 'Turn Left Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'Turn Left Sign',
        client = {
            image = 'turn_left_sign.png'
        }
    },
    ['no_u_turn_sign'] = {
        label = 'No U Turn Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'No U Turn Sign',
        client = {
            image = 'no_u_turn_sign.png'
        }
    },
    ['turn_right_sign'] = {
        label = 'Turn Right Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'Turn Right Sign',
        client = {
            image = 'turn_right_sign.png'
        }
    },
    ['stop_sign'] = {
        label = 'Stop Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'Stop Sign',
        client = {
            image = 'stop_sign.png'
        }
    },
    ['yield_sign'] = {
        label = 'Yield Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'Yield Sign',
        client = {
            image = 'yield_sign.png'
        }
    },
    ['no_parking_sign'] = {
        label = 'No Parking Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'No Parking Sign',
        client = {
            image = 'no_parking_sign.png'
        }
    },
    ['no_trespassing_sign'] = {
        label = 'No Trespassing Sign',
        weight = 100,
        stack = true,
        close = true,
        description = 'No Trespassing Sign',
        client = {
            image = 'no_trespassing_sign.png'
        }
    },
    ['rope'] = {
        label = 'Rope',
        weight = 100,
        stack = true,
        close = true,
        description = 'Rope',
        client = {
            image = 'rope.png'
        }
    },
    ['quarter'] = {
        label = 'A Quarter',
        weight = 100,
        stack = true,
        close = true,
        description = 'A Quarter',
        client = {
            image = 'quarter.png'
        }
    },
    ['parking_meter'] = {
        label = 'Parking Meter',
        weight = 100,
        stack = true,
        close = true,
        description = 'A Parking Meter',
        client = {
            image = 'parking_meter.png'
        }
    },
    ['parking_meter2'] = {
        label = 'Parking Meter 2',
        weight = 100,
        stack = true,
        close = true,
        description = 'A Parking Meter 2',
        client = {
            image = 'parking_meter2.png'
        }
    },
    ['brick'] = {
        label = 'Brick',
        weight = 100,
        stack = true,
        close = true,
        description = 'A Brick',
        client = {
            image = 'brick.png'
        }
    },
    ['wallet'] = {
        label = 'Wallet',
        weight = 100,
        stack = true,
        close = true,
        description = 'A Wallet',
        client = {
            image = 'wallet.png'
        }
    },
    ['gum'] = {
        label = 'Gum',
        weight = 100,
        stack = true,
        close = true,
        description = 'Chewing Gum',
        client = {
            image = 'gum.png'
        }
    },
    ['earpod'] = {
        label = 'Earpod',
        weight = 100,
        stack = true,
        close = true,
        description = 'Earpod',
        client = {
            image = 'earpod.png'
        }
    },
    ['siphon_hose'] = {
        label = 'Siphon Hose',
        weight = 100,
        stack = true,
        close = true,
        description = 'Siphon Hose',
        client = {
            image = 'siphon_hose.png'
        }
    },
    ['jerrycan'] = {
        label = 'Jerrycan',
        weight = 100,
        stack = true,
        close = true,
        description = 'Jerrycan',
        client = {
            image = 'weapon_petrolcan.png'
        }
    },
    ['wire_cutters'] = {
        label = 'Wire Cutters',
        weight = 100,
        stack = true,
        close = true,
        description = 'Wire Cutters',
        client = {
            image = 'wire_cutters.png'
        }
    },
    ['screwdriver'] = {
        label = 'Screwdriver',
        weight = 100,
        stack = true,
        close = true,
        description = 'Screwdriver',
        client = {
            image = 'screwdriver.png'
        }
    },
    ['screwdriverset'] = {
        label = 'Screwdriver Set',
        weight = 100,
        stack = true,
        close = true,
        description = 'Screwdriver Set',
        client = {
            image = 'toolkit.png'
        }
    },
    ['car_radio'] = {
        label = 'Car Radio',
        weight = 100,
        stack = true,
        close = true,
        description = 'Car Radio',
        client = {
            image = 'car_radio.png'
        }
    },
    ['cut_seatbelt'] = {
        label = 'Cut Seatbelt',
        weight = 100,
        stack = true,
        close = true,
        description = 'Cut Seatbelt',
        client = {
            image = 'cut_seatbelt.png'
        }
    },
    ['airbag'] = {
        label = 'Airbag',
        weight = 100,
        stack = true,
        close = true,
        description = 'Airbag',
        client = {
            image = 'airbag.png'
        }
    },
    ['battery'] = {
        label = 'Battery',
        weight = 100,
        stack = true,
        close = true,
        description = 'Battery',
        client = {
            image = 'battery.png'
        }
    },
    ['buzzsaw'] = {
        label = 'Buzzsaw',
        weight = 100,
        stack = true,
        close = true,
        description = 'Buzzsaw',
        client = {
            image = 'buzzsaw.png'
        }
    },
    ['catalytic_converter'] = {
        label = 'Catalytic Converter',
        weight = 100,
        stack = true,
        close = true,
        description = 'Catalytic Converter',
        client = {
            image = 'catalytic_converter.png'
        }
    },
    ['stolen_package'] = {
        label = 'Stolen Package',
        weight = 100,
        stack = true,
        close = true,
        description = 'Stolen Package',
        client = {
            image = 'stolen_package.png'
        }
    },
    ['shirt'] = {
        label = 'Shirt',
        weight = 100,
        stack = true,
        close = true,
        description = 'Shirt',
        client = {
            image = 'shirt.png'
        }
    },
    ['pants'] = {
        label = 'Pants',
        weight = 100,
        stack = true,
        close = true,
        description = 'Pants',
        client = {
            image = 'pants.png'
        }
    },

    ['traffic_cone'] = {
        label = 'Traffic Cone',
        weight = 100,
        stack = true,
        close = true,
        description = 'Traffic Cone',
        client = {
            image = 'traffic_cone.png'
        }
    },

    ['banana'] = {
        label = 'Banana',
        weight = 100,
        stack = true,
        close = true,
        description = 'Banana',
        client = {
            image = 'banana.png'
        }
    },

    ['freon_canister'] = {
        label = 'Freon Canister',
        weight = 100,
        stack = true,
        close = true,
        description = 'Freon Canister',
        client = {
            image = 'freon_canister.png'
        }
    },
    
    ['whoopee_pillow'] = {
        label = 'Whoopee Pillow',
        weight = 100,
        stack = true,
        close = true,
        description = 'Whoopee Pillow',
        client = {
            image = 'whoopee_pillow.png'
        }
    },

    ['lighter'] = {
        label = 'Lighter',
        weight = 100,
        stack = true,
        close = true,
        description = 'Lighter',
        client = {
            image = 'lighter.png'
        }
    },
```

{% endtab %}

{% tab title="QB Inventory" %}

```lua
-- Signs
['ped_sign'] = {['name'] = 'ped_sign', ['label'] = 'Pedestrian Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'ped_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Pedestrian Sign'},
['turn_left_sign'] = {['name'] = 'turn_left_sign', ['label'] = 'Turn Left Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'turn_left_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Turn Left Sign'},
['no_u_turn_sign'] = {['name'] = 'no_u_turn_sign', ['label'] = 'No U Turn Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'no_u_turn_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'No U Turn Sign'},
['turn_right_sign'] = {['name'] = 'turn_right_sign', ['label'] = 'Turn Right Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'turn_right_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Turn Right Sign'},
['stop_sign'] = {['name'] = 'stop_sign', ['label'] = 'Stop Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'stop_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Stop Sign'},
['yield_sign'] = {['name'] = 'yield_sign', ['label'] = 'Yield Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'yield_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Yield Sign'},
['no_parking_sign'] = {['name'] = 'no_parking_sign', ['label'] = 'No Parking Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'no_parking_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'No Parking Sign'},
['no_trespassing_sign'] = {['name'] = 'no_trespassing_sign', ['label'] = 'No Trespassing Sign', ['weight'] = 100, ['type'] = 'item', ['image'] = 'no_trespassing_sign.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'No Trespassing Sign'},

-- Misc
['rope'] = {['name'] = 'rope', ['label'] = 'Rope', ['weight'] = 100, ['type'] = 'item', ['image'] = 'rope.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Rope'},
['quarter'] = {['name'] = 'quarter', ['label'] = 'A Quarter', ['weight'] = 100, ['type'] = 'item', ['image'] = 'quarter.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'A Quarter'},
['parking_meter'] = {['name'] = 'parking_meter', ['label'] = 'Parking Meter', ['weight'] = 100, ['type'] = 'item', ['image'] = 'parking_meter.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'A Parking Meter'},
['parking_meter2'] = {['name'] = 'parking_meter2', ['label'] = 'Parking Meter 2', ['weight'] = 100, ['type'] = 'item', ['image'] = 'parking_meter2.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'A Parking Meter 2'},
['brick'] = {['name'] = 'brick', ['label'] = 'Brick', ['weight'] = 100, ['type'] = 'item', ['image'] = 'brick.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'A Brick'},
['wallet'] = {['name'] = 'wallet', ['label'] = 'Wallet', ['weight'] = 100, ['type'] = 'item', ['image'] = 'wallet.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'A Wallet'},
['gum'] = {['name'] = 'gum', ['label'] = 'Gum', ['weight'] = 100, ['type'] = 'item', ['image'] = 'gum.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Chewing Gum'},
['earpod'] = {['name'] = 'earpod', ['label'] = 'Earpod', ['weight'] = 100, ['type'] = 'item', ['image'] = 'earpod.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Earpod'},
['siphon_hose'] = {['name'] = 'siphon_hose', ['label'] = 'Siphon Hose', ['weight'] = 100, ['type'] = 'item', ['image'] = 'siphon_hose.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Siphon Hose'},
['jerrycan'] = {['name'] = 'jerrycan', ['label'] = 'Jerrycan', ['weight'] = 100, ['type'] = 'item', ['image'] = 'weapon_petrolcan.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Jerrycan'},
['wire_cutters'] = {['name'] = 'wire_cutters', ['label'] = 'Wire Cutters', ['weight'] = 100, ['type'] = 'item', ['image'] = 'wire_cutters.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Wire Cutters'},
['screwdriver'] = {['name'] = 'screwdriver', ['label'] = 'Screwdriver', ['weight'] = 100, ['type'] = 'item', ['image'] = 'screwdriver.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Screwdriver'},
['car_radio'] = {['name'] = 'car_radio', ['label'] = 'Car Radio', ['weight'] = 100, ['type'] = 'item', ['image'] = 'car_radio.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Car Radio'},
['cut_seatbelt'] = {['name'] = 'cut_seatbelt', ['label'] = 'Cut Seatbelt', ['weight'] = 100, ['type'] = 'item', ['image'] = 'cut_seatbelt.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Cut Seatbelt'},
['airbag'] = {['name'] = 'airbag', ['label'] = 'Airbag', ['weight'] = 100, ['type'] = 'item', ['image'] = 'airbag.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Airbag'},
['screwdriverset'] = {['name'] = 'screwdriverset', ['label'] = 'Screw Driver Set', ['weight'] = 100, ['type'] = 'item', ['image'] = 'toolkit.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Screwdriver Set'},
['battery'] = {['name'] = 'battery', ['label'] = 'Battery', ['weight'] = 100, ['type'] = 'item', ['image'] = 'battery.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Battery'},
['buzzsaw'] = {['name'] = 'buzzsaw', ['label'] = 'Buzzsaw', ['weight'] = 100, ['type'] = 'item', ['image'] = 'buzzsaw.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Buzzsaw'},
['catalytic_converter'] = {['name'] = 'catalytic_converter', ['label'] = 'Catalytic Converter', ['weight'] = 100, ['type'] = 'item', ['image'] = 'catalytic_converter.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Catalytic Converter'},
['stolen_package'] = {['name'] = 'stolen_package', ['label'] = 'Stolen Package', ['weight'] = 100, ['type'] = 'item', ['image'] = 'stolen_package.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Stolen Package'},
['shirt'] = {['name'] = 'shirt', ['label'] = 'Shirt', ['weight'] = 100, ['type'] = 'item', ['image'] = 'shirt.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Shirt'},
['pants'] = {['name'] = 'pants', ['label'] = 'Pants', ['weight'] = 100, ['type'] = 'item', ['image'] = 'pants.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Pants'},
['traffic_cone'] = {['name'] = 'traffic_cone', ['label'] = 'Traffic Cone', ['weight'] = 100, ['type'] = 'item', ['image'] = 'traffic_cone.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Traffic Cone'},
['banana'] = {['name'] = 'banana', ['label'] = 'Banana', ['weight'] = 100, ['type'] = 'item', ['image'] = 'banana.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Banana'},
['freon_canister'] = {['name'] = 'freon_canister', ['label'] = 'Freon Canister', ['weight'] = 100, ['type'] = 'item', ['image'] = 'freon_canister.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Freon Canister'},
['whoopee_pillow'] = {['name'] = 'whoopee_pillow', ['label'] = 'Whoopee Pillow', ['weight'] = 100, ['type'] = 'item', ['image'] = 'whoopee_pillow.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Whoopee Pillow'},
['lighter'] = {['name'] = 'lighter', ['label'] = 'Lighter', ['weight'] = 100, ['type'] = 'item', ['image'] = 'lighter.png', ['unique'] = false, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Lighter'},

```

{% endtab %}
{% endtabs %}

***

> **3) ADD THE IMAGES TO YOUR INVENTORY**

{% hint style="info" %}

* Open DHS-PettyCrime > INSTALL FILES > itemImages
* Copy files from the folder and add them into your inventory image folder
  {% endhint %}

***

> **4) ADD THE SOUND FILES**

{% hint style="info" %}

* Open DHS-PettyCrime> INSTALL FILES > sounds
* Copy files from the folder and add them to interact-sound > client > html > sounds
  {% endhint %}

***

> **5) INSTALL COMPLETE**

{% hint style="success" %}
The Install is now complete, you may move onto looking at the config.
{% endhint %}

***
