> For the complete documentation index, see [llms.txt](https://docs.djscollections.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.djscollections.com/requirements/food-and-drink-animations/installation.md).

# Installation

{% stepper %}
{% step %}
**Download the resources**

Download both `cfx-djs-anims`,  [CFX portal](https://portal.cfx.re/login) and place them in your resources folder.
{% endstep %}

{% step %}
**Add to server.cfg**

Add `cfx-djs-anims`  to your `server.cfg` after all dependencies

```
ensure cfx-djs-anims
```

{% endstep %}

{% step %}
**Add Emotes to Script**

Add the required items to your inventory resource — see [Addon Scripts](#items) below info
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
All emotes are included and already pre-configured with our models, so they are ready to use out of the box. The additional config we provide is mainly for developers or those using addon scripts—we only include the necessary information needed to integrate everything smoothly into your setup.
{% endhint %}

***

## Emotes List <a href="#items" id="items"></a>

Make sure to add all required items to your inventory resource using the format that matches your setup.

{% columns %}
{% column %}
**Animation Name**
{% endcolumn %}

{% column %}
**dict name**
{% endcolumn %}

{% column %}
**clip name**
{% endcolumn %}
{% endcolumns %}

|                |                             |                                                                                                                                                                                                 |
| -------------- | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Soda           | anim\@djs\@drink\@soda      | <ul><li>djs\_drink\_soda\_idle</li><li>djs\_drink\_soda\_sip\_quick</li><li>djs\_drink\_soda\_sip\_long</li></ul>                                                                               |
| Chips          | anim\@djs\@food\@chips      | <ul><li>djs\_food\_chips\_idle</li><li>djs\_food\_chips\_bite\_single</li><li>djs\_food\_chips\_bite\_loop</li><li>djs\_food\_chips\_handful\_loop</li></ul>                                    |
| Shots          | anim\@djs\@drink\@shot      | <ul><li>djs\_drink\_shot\_idle</li><li>djs\_drink\_shot\_quick</li></ul>                                                                                                                        |
| Coffee         | anim\@djs\@drink\@coffee    | <ul><li>djs\_drink\_coffee\_idle</li><li>djs\_drink\_coffee\_sip\_quick</li><li>djs\_drink\_coffee\_sip\_long</li></ul>                                                                         |
| Plated         | anim\@djs\@food\@plated     | <ul><li>djs\_food\_plate\_idle</li><li>djs\_food\_plate\_bite\_single</li><li>djs\_food\_plate\_bite\_loop</li></ul>                                                                            |
| Ice Cream Cone | anim\@djs\@food\@cone       | <ul><li>djs\_food\_cone\_idle</li><li>djs\_food\_cone\_bite\_single</li><li>djs\_food\_cone\_lick\_single</li><li>djs\_food\_cone\_lick\_multiple</li><li>djs\_food\_cone\_lick\_loop</li></ul> |
| Margarita      | anim\@djs\@drink\@margarita | <ul><li>djs\_drink\_margarita\_idle</li><li>djs\_drink\_margarita\_sip\_quick</li><li>djs\_drink\_margarita\_sip\_long</li><li>djs\_drink\_margarita\_sip\_loop</li></ul>                       |

***

## Addon Emote  / Developer Scripts

Make sure to add all required items to your emote / dev resource using the format that matches your setup.

{% tabs %}
{% tab title="RP Emotes" %}
Add the emotes below to your `rpemotes-reborn` into `client/AnimationList.lua`.

{% code expandable="true" %}

```
["soda_idle"] = {
    "anim@djs@drink@soda",
    "djs_drink_soda_idle",
    "Soda Idle",
    "drink",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["soda_sip_quick"] = {
    "anim@djs@drink@soda",
    "djs_drink_soda_sip_quick",
    "Soda Sip Quick",
    "drink",
    AnimationOptions = { EmoteDuration = 2000 }
},

["soda_sip_long"] = {
    "anim@djs@drink@soda",
    "djs_drink_soda_sip_long",
    "Soda Sip Long",
    "drink",
    AnimationOptions = { EmoteDuration = 4000 }
},
["chips_idle"] = {
    "anim@djs@food@chips",
    "djs_food_chips_idle",
    "Chips Idle",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["chips_bite_single"] = {
    "anim@djs@food@chips",
    "djs_food_chips_bite_single",
    "Chips Bite",
    "food",
    AnimationOptions = { EmoteDuration = 2000 }
},

["chips_bite_loop"] = {
    "anim@djs@food@chips",
    "djs_food_chips_bite_loop",
    "Chips Bite Loop",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["chips_handful_loop"] = {
    "anim@djs@food@chips",
    "djs_food_chips_handful_loop",
    "Chips Handful",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["shot_idle"] = {
    "anim@djs@drink@shot",
    "djs_drink_shot_idle",
    "Shot Idle",
    "drink",
    AnimationOptions = {}
},

["shot_quick"] = {
    "anim@djs@drink@shot",
    "djs_drink_shot_quick",
    "Take Shot",
    "drink",
    AnimationOptions = { EmoteDuration = 2000 }
},

["coffee_idle"] = {
    "anim@djs@drink@coffee",
    "djs_drink_coffee_idle",
    "Coffee Idle",
    "drink",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["coffee_sip_quick"] = {
    "anim@djs@drink@coffee",
    "djs_drink_coffee_sip_quick",
    "Coffee Sip Quick",
    "drink",
    AnimationOptions = { EmoteDuration = 2000 }
},

["coffee_sip_long"] = {
    "anim@djs@drink@coffee",
    "djs_drink_coffee_sip_long",
    "Coffee Sip Long",
    "drink",
    AnimationOptions = { EmoteDuration = 4000 }
},

["plate_idle"] = {
    "anim@djs@food@plated",
    "djs_food_plate_idle",
    "Plate Idle",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["plate_bite_single"] = {
    "anim@djs@food@plated",
    "djs_food_plate_bite_single",
    "Plate Bite",
    "food",
    AnimationOptions = { EmoteDuration = 2000 }
},

["plate_bite_loop"] = {
    "anim@djs@food@plated",
    "djs_food_plate_bite_loop",
    "Plate Eating",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["cone_idle"] = {
    "anim@djs@food@cone",
    "djs_food_cone_idle",
    "Cone Idle",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["cone_bite"] = {
    "anim@djs@food@cone",
    "djs_food_cone_bite_single",
    "Cone Bite",
    "food",
    AnimationOptions = { EmoteDuration = 2000 }
},

["cone_lick_single"] = {
    "anim@djs@food@cone",
    "djs_food_cone_lick_single",
    "Cone Lick",
    "food",
    AnimationOptions = { EmoteDuration = 2000 }
},

["cone_lick_multiple"] = {
    "anim@djs@food@cone",
    "djs_food_cone_lick_multiple",
    "Cone Lick Multiple",
    "food",
    AnimationOptions = { EmoteDuration = 3000 }
},

["cone_lick_loop"] = {
    "anim@djs@food@cone",
    "djs_food_cone_lick_loop",
    "Cone Lick Loop",
    "food",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["margarita_idle"] = {
    "anim@djs@drink@margarita",
    "djs_drink_margarita_idle",
    "Margarita Idle",
    "drink",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},

["margarita_sip_quick"] = {
    "anim@djs@drink@margarita",
    "djs_drink_margarita_sip_quick",
    "Margarita Sip Quick",
    "drink",
    AnimationOptions = { EmoteDuration = 2000 }
},

["margarita_sip_long"] = {
    "anim@djs@drink@margarita",
    "djs_drink_margarita_sip_long",
    "Margarita Sip Long",
    "drink",
    AnimationOptions = { EmoteDuration = 4000 }
},

["margarita_sip_loop"] = {
    "anim@djs@drink@margarita",
    "djs_drink_margarita_sip_loop",
    "Margarita Sip Loop",
    "drink",
    AnimationOptions = { onFootFlag = AnimFlag.MOVING }
},
```

{% endcode %}
{% endtab %}

{% tab title="Scully Emotes" %}
Add the emotes below to your `scully_emotemenu` into `shared/data/emotes/anything.lua`

{% code expandable="true" %}

```
{
    name = "sodaidle",
    label = "Soda Idle",
    icon = "glass-water",
    command = "sodaidle",
    category = "Drinks",
    dictionary = "anim@djs@drink@soda",
    animation = "djs_drink_soda_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "sodasipquick",
    label = "Soda Sip Quick",
    icon = "glass-water",
    command = "sodasipquick",
    category = "Drinks",
    dictionary = "anim@djs@drink@soda",
    animation = "djs_drink_soda_sip_quick",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "sodasiplong",
    label = "Soda Sip Long",
    icon = "glass-water",
    command = "sodasiplong",
    category = "Drinks",
    dictionary = "anim@djs@drink@soda",
    animation = "djs_drink_soda_sip_long",
    options = {
        duration = 4000,
        move = false,
        loop = false
    }
},

{
    name = "chipsidle",
    label = "Chips Idle",
    icon = "burger",
    command = "chipsidle",
    category = "Food",
    dictionary = "anim@djs@food@chips",
    animation = "djs_food_chips_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "chipsbitesingle",
    label = "Chips Bite Single",
    icon = "burger",
    command = "chipsbitesingle",
    category = "Food",
    dictionary = "anim@djs@food@chips",
    animation = "djs_food_chips_bite_single",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "chipsbiteloop",
    label = "Chips Bite Loop",
    icon = "burger",
    command = "chipsbiteloop",
    category = "Food",
    dictionary = "anim@djs@food@chips",
    animation = "djs_food_chips_bite_loop",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "chipshandfulloop",
    label = "Chips Handful Loop",
    icon = "burger",
    command = "chipshandfulloop",
    category = "Food",
    dictionary = "anim@djs@food@chips",
    animation = "djs_food_chips_handful_loop",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},

{
    name = "shotidle",
    label = "Shot Idle",
    icon = "martini-glass",
    command = "shotidle",
    category = "Drinks",
    dictionary = "anim@djs@drink@shot",
    animation = "djs_drink_shot_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "shotquick",
    label = "Shot Quick",
    icon = "martini-glass",
    command = "shotquick",
    category = "Drinks",
    dictionary = "anim@djs@drink@shot",
    animation = "djs_drink_shot_quick",
    options = {
        duration = 2000,
        move = false,
        loop = false
    }
},

{
    name = "coffeeidle",
    label = "Coffee Idle",
    icon = "mug-hot",
    command = "coffeeidle",
    category = "Drinks",
    dictionary = "anim@djs@drink@coffee",
    animation = "djs_drink_coffee_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "coffeesipquick",
    label = "Coffee Sip Quick",
    icon = "mug-hot",
    command = "coffeesipquick",
    category = "Drinks",
    dictionary = "anim@djs@drink@coffee",
    animation = "djs_drink_coffee_sip_quick",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "coffeesiplong",
    label = "Coffee Sip Long",
    icon = "mug-hot",
    command = "coffeesiplong",
    category = "Drinks",
    dictionary = "anim@djs@drink@coffee",
    animation = "djs_drink_coffee_sip_long",
    options = {
        duration = 4000,
        move = false,
        loop = false
    }
},

{
    name = "plateidle",
    label = "Plate Idle",
    icon = "utensils",
    command = "plateidle",
    category = "Food",
    dictionary = "anim@djs@food@plated",
    animation = "djs_food_plate_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "platebitesingle",
    label = "Plate Bite Single",
    icon = "utensils",
    command = "platebitesingle",
    category = "Food",
    dictionary = "anim@djs@food@plated",
    animation = "djs_food_plate_bite_single",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "platebiteloop",
    label = "Plate Bite Loop",
    icon = "utensils",
    command = "platebiteloop",
    category = "Food",
    dictionary = "anim@djs@food@plated",
    animation = "djs_food_plate_bite_loop",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},

{
    name = "coneidle",
    label = "Cone Idle",
    icon = "ice-cream",
    command = "coneidle",
    category = "Food",
    dictionary = "anim@djs@food@cone",
    animation = "djs_food_cone_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "conebitesingle",
    label = "Cone Bite Single",
    icon = "ice-cream",
    command = "conebitesingle",
    category = "Food",
    dictionary = "anim@djs@food@cone",
    animation = "djs_food_cone_bite_single",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "conelicksingle",
    label = "Cone Lick Single",
    icon = "ice-cream",
    command = "conelicksingle",
    category = "Food",
    dictionary = "anim@djs@food@cone",
    animation = "djs_food_cone_lick_single",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "conelickmultiple",
    label = "Cone Lick Multiple",
    icon = "ice-cream",
    command = "conelickmultiple",
    category = "Food",
    dictionary = "anim@djs@food@cone",
    animation = "djs_food_cone_lick_multiple",
    options = {
        duration = 3500,
        move = false,
        loop = false
    }
},
{
    name = "conelickloop",
    label = "Cone Lick Loop",
    icon = "ice-cream",
    command = "conelickloop",
    category = "Food",
    dictionary = "anim@djs@food@cone",
    animation = "djs_food_cone_lick_loop",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},

{
    name = "margaritaidle",
    label = "Margarita Idle",
    icon = "martini-glass-citrus",
    command = "margaritaidle",
    category = "Drinks",
    dictionary = "anim@djs@drink@margarita",
    animation = "djs_drink_margarita_idle",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
{
    name = "margaritasipquick",
    label = "Margarita Sip Quick",
    icon = "martini-glass-citrus",
    command = "margaritasipquick",
    category = "Drinks",
    dictionary = "anim@djs@drink@margarita",
    animation = "djs_drink_margarita_sip_quick",
    options = {
        duration = 2500,
        move = false,
        loop = false
    }
},
{
    name = "margaritasiplong",
    label = "Margarita Sip Long",
    icon = "martini-glass-citrus",
    command = "margaritasiplong",
    category = "Drinks",
    dictionary = "anim@djs@drink@margarita",
    animation = "djs_drink_margarita_sip_long",
    options = {
        duration = 4000,
        move = false,
        loop = false
    }
},
{
    name = "margaritasiploop",
    label = "Margarita Sip Loop",
    icon = "martini-glass-citrus",
    command = "margaritasiploop",
    category = "Drinks",
    dictionary = "anim@djs@drink@margarita",
    animation = "djs_drink_margarita_sip_loop",
    options = {
        duration = -1,
        move = true,
        loop = true
    }
},
```

{% endcode %}
{% endtab %}

{% tab title="Zykes Propaligner" %}

* Copy the item config **(non-consumable)** and put it into your inventory item list like normal.

{% code expandable="true" %}

```
{
    label = "Soda Idle",
    dict = "anim@djs@drink@soda",
    clip = "djs_drink_soda_idle",
},
{
    label = "Soda Sip Quick",
    dict = "anim@djs@drink@soda",
    clip = "djs_drink_soda_sip_quick",
},
{
    label = "Soda Sip Long",
    dict = "anim@djs@drink@soda",
    clip = "djs_drink_soda_sip_long",
},

{
    label = "Shot Idle",
    dict = "anim@djs@drink@shot",
    clip = "djs_drink_shot_idle",
},
{
    label = "Take Shot",
    dict = "anim@djs@drink@shot",
    clip = "djs_drink_shot_quick",
},

{
    label = "Coffee Idle",
    dict = "anim@djs@drink@coffee",
    clip = "djs_drink_coffee_idle",
},
{
    label = "Coffee Sip Quick",
    dict = "anim@djs@drink@coffee",
    clip = "djs_drink_coffee_sip_quick",
},
{
    label = "Coffee Sip Long",
    dict = "anim@djs@drink@coffee",
    clip = "djs_drink_coffee_sip_long",
},

{
    label = "Margarita Idle",
    dict = "anim@djs@drink@margarita",
    clip = "djs_drink_margarita_idle",
},
{
    label = "Margarita Sip Quick",
    dict = "anim@djs@drink@margarita",
    clip = "djs_drink_margarita_sip_quick",
},
{
    label = "Margarita Sip Long",
    dict = "anim@djs@drink@margarita",
    clip = "djs_drink_margarita_sip_long",
},
{
    label = "Margarita Sip Loop",
    dict = "anim@djs@drink@margarita",
    clip = "djs_drink_margarita_sip_loop",
},
{
    label = "Chips Idle",
    dict = "anim@djs@food@chips",
    clip = "djs_food_chips_idle",
},
{
    label = "Chips Bite",
    dict = "anim@djs@food@chips",
    clip = "djs_food_chips_bite_single",
},
{
    label = "Chips Bite Loop",
    dict = "anim@djs@food@chips",
    clip = "djs_food_chips_bite_loop",
},
{
    label = "Chips Handful",
    dict = "anim@djs@food@chips",
    clip = "djs_food_chips_handful_loop",
},

{
    label = "Plate Idle",
    dict = "anim@djs@food@plated",
    clip = "djs_food_plate_idle",
},
{
    label = "Plate Bite",
    dict = "anim@djs@food@plated",
    clip = "djs_food_plate_bite_single",
},
{
    label = "Plate Eat Loop",
    dict = "anim@djs@food@plated",
    clip = "djs_food_plate_bite_loop",
},

{
    label = "Cone Idle",
    dict = "anim@djs@food@cone",
    clip = "djs_food_cone_idle",
},
{
    label = "Cone Bite",
    dict = "anim@djs@food@cone",
    clip = "djs_food_cone_bite_single",
},
{
    label = "Cone Lick",
    dict = "anim@djs@food@cone",
    clip = "djs_food_cone_lick_single",
},
{
    label = "Cone Lick Multiple",
    dict = "anim@djs@food@cone",
    clip = "djs_food_cone_lick_multiple",
},
{
    label = "Cone Lick Loop",
    dict = "anim@djs@food@cone",
    clip = "djs_food_cone_lick_loop",
},
```

{% endcode %}
{% endtab %}
{% endtabs %}

***

## **Inventory Icons**

Make sure to add these icons to your preferred inventory’s image folder for them to display correctly.

{% stepper %}
{% step %}

### Ox Inventory

`ox_inventory/web/images`
{% endstep %}

{% step %}

### QS Inventory

`qs-inventory/html/images`
{% endstep %}
{% endstepper %}

{% file src="/files/VCSpiMd6eorjxXfWrAmS" %}

***
