# Installation

## Dependencies :

<details>

<summary>QBCore</summary>

You will need the latest version of [qb-core](https://github.com/qbcore-framework/qb-core)

* Extract the contents of the archive to your resources folder.
* Start the resource near the top of your resources in your server.cfg.

</details>

<details>

<summary>INTERACT OR TARGET</summary>

You will need the latest version of [Interact](https://github.com/darktrovx/interact) or [qb-target](https://github.com/qbcore-framework/qb-target)

* Extract the contents of the archive to your resources folder.
* Start the resource near the top of your resources in your server.cfg.

</details>

<details>

<summary>XSOUND</summary>

You will need the latest version of [xsound](https://github.com/Xogy/xsound)

* Extract the contents of the archive to your resources folder.
* Start the resource near the top of your resources in your server.cfg.

</details>

***

## Inventories :

<details>

<summary>QB INVENTORY</summary>

Add the items below to the qb-core/shared/items.lua:&#x20;

```lua
    --- shoes
    shoebox               = { name = 'shoebox',                         label = 'Shoe Box',                       weight = 100,       type = 'item',      image = 'shoebox.png',                                          unique = true, useable = true,     shouldClose = true,    combinable = nil,   description = 'Show Box' },    
    rfid_scanner          = { name = 'rfid_scanner',                    label = 'RFID Scanner',                   weight = 100,       type = 'item',      image = 'rfid_scanner.png',                                          unique = true, useable = true,     shouldClose = true,    combinable = nil,   description = 'RFID Scanner' }, 

```

Add this into your qb-inventory js file:&#x20;

```javascript
        case "shoebox":
            if (itemData.info.shoes == 0){
                return `<p><strong>Model: </strong><span>${itemData.info.model}</span></p>
                <p><strong>Color: </strong><span>${itemData.info.color}</span></p>
                <p><strong>Reference: </strong><span>${itemData.info.ref}</span></p>
                <p><strong>Shoes Inside: </strong><span>Empty</span></p>`;
            }else{
                return `<p><strong>Model: </strong><span>${itemData.info.model}</span></p>
                <p><strong>Color: </strong><span>${itemData.info.color}</span></p>
                <p><strong>Reference: </strong><span>${itemData.info.ref}</span></p>
                <p><strong>Shoes Inside: </strong><span>${itemData.info.model}</span></p>`;
            }
```

</details>

<details>

<summary>QS INVENTORY</summary>

Add the items below into your qs-inventory/shared/items.lua

```lua
   ['shoebox']                  = {
        ['name'] = 'shoebox',
        ['label'] = 'Shoes Box',
        ['weight'] = 0,
        ['type'] = 'item',
        ['image'] = 'shoebox.png',
        ['unique'] = true,
        ['useable'] = true,
        ['shouldClose'] = true,
        ['combinable'] = nil,
        ['description'] = 'Shoes Box...'
    },
     ['rfid_scanner']                  = {
        ['name'] = 'rfid_scanner',
        ['label'] = 'RFID Scanner',
        ['weight'] = 0,
        ['type'] = 'item',
        ['image'] = 'rfid_scanner.png',
        ['unique'] = true,
        ['useable'] = true,
        ['shouldClose'] = true,
        ['combinable'] = nil,
        ['description'] = 'RFID Scanner...'
    },
```

Add this into qs-inventory/server/custom/misc/CreateUseableItem.lua

```lua
CreateUsableItem('shoebox', function(source, item)
    local src = source
    TriggerClientEvent("zat-shoesheist:client:PreviewBox", src, item.info.box)
end)
```

Add this into qs-inventory/config/metadata.js

```javascript
        } else if (itemData.name == "shoebox") {
            if (itemData.info.shoes == 0){
                $(".item-info-description").html(
                    "<p><strong>Model:  </strong><span>" +
                    itemData.info.model +
                    "</span></p><p><strong>Color: </strong><span>" +
                    itemData.info.color +
                    "</span></p><p><strong>Reference: </strong><span>" +
                    itemData.info.ref +
                    "</span></p><p><strong>Empty</strong></p>"
                );
            }else{
                $(".item-info-description").html(
                    "<p><strong>Model:  </strong><span>" +
                    itemData.info.model +
                    "</span></p><p><strong>Color: </strong><span>" +
                    itemData.info.color +
                    "</span></p><p><strong>Reference: </strong><span>" +
                    itemData.info.ref +
                    "<p><strong>Shoes Inside: </strong><span>" +
                        itemData.info.model +
                    "</span></p>"
                );
            }
```

</details>

<details>

<summary>OX INVENTORY</summary>

Add the items below into your ox-inventory/data/items.lua

```lua
	["shoebox"] = {
		label = "Shoe Box",
		weight = 100,
		stack = false,
		close = true,
		description = "Show Box",
		client = {
			image = "shoebox.png",
		}
	},
	["rfid_scanner"] = {
		label = "RFID Scanner",
		weight = 100,
		stack = false,
		close = true,
		description = "RFID Scanner",
		client = {
			image = "rfid_scanner.png",
		}
	},
```

Add this into ox\_inventory/modules/items/client.lua

```lua
Item('shoebox', function(data, slot)
	ox_inventory:useItem(data, function(data)
		if data then
			TriggerEvent("zat-shoesheist:client:PreviewBox", slot.metadata.box)
		end
	end)
end)
```

</details>

***

## Dialog :

<details>

<summary>ZAT DIALOG</summary>

Add the code below to zat-dialog/shared/config.lua

```lua
    -- shoesheist
    {
        ped         = 'a_f_y_business_04',
        anim        = 'CODE_HUMAN_MEDIC_TIME_OF_DEATH',
        coords      =  vector4(-1224.08, -1442.37, 3.31, 210.98),
        job         = "all", -- { ["police"] = 0, ["ambulance"] = 0}  if you are using target
        gang        = "all", -- { ["ballas"] = 2, ["thelostmc"] = 0}  if you are using target
        groups      = "all", -- { ["police"] = 2, ["ambulance"] = 0}  if you are using intearaction
        firstname   = 'BARK',
        lastname    = 'MOORE',
        rep         = 0,
        mission     = 'shoesheist',
        text        = 'Hey there, looking for a side gig, huh? I’ve got an idea that’s a bit unconventional, but trust me, it’ll pay off. Picture this: you and your crew sneak into a clothing store and grab every pair of sneakers you can find. Make sure you bring the correct shoe boxes along so I can sell them in my shop.',
        buttons     = {
            {
                text= 'I want to work',
                rep = 0,
                answer ='Ready for a day of hard work?',
                buttons={{
                        text = 'yes',
                        shop =false,
                        rep = 0,
                        action= {
                            isServer= false,
                            event= 'zat-shoesheist:client:StartWorking',
                            data= {}
                        },
                        canInteract = CanToggleSignIn(),
                    },
                    {
                        text = 'Leave Conversation',
                        shop =false,
                        rep = 0,
                        action= {
                            isServer= false,
                            event= 'zat-dialog:client:HideUi',
                            data= {}
                        },
                        canInteract = true
                    }
                },
                canInteract = true
            },
            {
                text = 'Sell Shoes',
                rep = 0,
                shop =false,
                action= {
                    isServer= true,
                    event= 'zat-shoesheist:server:SellShoes',
                    data= {}
                },
                canInteract = true
            },
            {
                text = 'Join/Create Group',
                rep = 0,
                shop =false,
                action= {
                    isServer= false,
                    event= 'zat-groups:client:OpenUi',
                    data= {}
                },
                canInteract = true
            },
            {
                text    = 'Open Shop',
                rep = 0,
                shop    = true,
                answer  = null,
                canInteract = true
            },
        },
        items={
            {
                name   = 'rfid_scanner',
                label  = 'RFID Scanner',
                image  = 'nui://'..Config.Img..'rfid_scanner.png',
                type   = 'Equipement',
                price  = 1000,
                rep    = 0,
                amount = 0, -- keep it 0
                info   = {},
                canInteract = true
            },     
        }
    }, 
```

</details>

## Doorlock:

<details>

<summary>QB DOORLOCK</summary>

copy <mark style="color:green;">shoesheist.lua</mark> doorlock file and paste it in qb-doorlock/configs

</details>

<details>

<summary>OX DOORLOCK</summary>

Just import the <mark style="color:green;">ox\_doorlock.sql</mark> into your Database.

</details>

## ENSURE RESOURCES

* [ ] ensure zat-ui
* [ ] ensure zat-groups
* [ ] ensure zat-minigames\_2
* [ ] ensure xsound
* [ ] ensure zat-shoesheist
