# Bow

The bow animates as you pull it, this allows you to have a single texture/model for each of these states.

{% hint style="warning" %}
It is very important to set the textures to your bow item that should have set them to avoid problem with missing texture:

<img src="https://2228257718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Faipc4QQKwVS0w1Q604ya%2Fuploads%2Fgit-blob-0f2009c6ef96b427f010135fdf137644cdf58d64%2Fbow_without_item_states.gif?alt=media" alt="" data-size="original">
{% endhint %}

To use the status textures, you need to add suffixes to your model filename or texture.

If you plan to use textures (png) you had to set `generate: true`.\
If you plan to use models (json) you have to set `generate: false`, as you already have the models.

## Suffixes for items

* `BOW`
  * `_0` - First pulling state
  * `_1` - Second pulling state
  * `_2` - Third pulling state
* `FISHING_ROD`
  * `_cast` - Shows a fishing rod when it is cast
* `SHIELD`
  * `_blocking` - Shows a shield model when you are blocking with it
* `BUNDLE`
  * `_filled` - Displays a bundle when it is filled

## Adding item states using suffixes (bow)

Firstly you need to create three pulling states for our bow

![](https://2228257718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Faipc4QQKwVS0w1Q604ya%2Fuploads%2Fgit-blob-ec6c70a00b67c3d650bd6bcbd0be6e1b9d08695e%2Fbow_pulling_states.gif?alt=media)

Save them, drop to the directory where is your original bow texture and add suffixes to your textures like this:

I put them into `contents/myitems/textures/item/` folder of my resourcepack.

<div align="left"><img src="https://2228257718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Faipc4QQKwVS0w1Q604ya%2Fuploads%2Fgit-blob-eba075d6a75aa2c89499b33d0440ed0f1d2851fe%2Fbow_suffixes_textures.png?alt=media" alt=""></div>

{% hint style="info" %}
Suffixes also work on model names (json).\
I put them into `contents/myitems/models/item/` folder of my resourcepack.

<img src="https://2228257718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Faipc4QQKwVS0w1Q604ya%2Fuploads%2Fgit-blob-9803852665096f85f5afcb4a2d16bb6e0c5422e1%2Fbow_suffixes_models.png?alt=media" alt="" data-size="original">
{% endhint %}

```yaml
items:
  ruby_bow:
    enabled: true
    display_name: Example Ruby Bow
    permission: myitems.bows.ruby_bow
    resource:
      material: BOW
      generate: true
      textures:
        - item/bows/ruby_bow
```

## Done

You have working bow with item states

![](https://2228257718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Faipc4QQKwVS0w1Q604ya%2Fuploads%2Fgit-blob-0f2edaaca0ebdcb4ebdb37fb7538271982d351fe%2Fbow_with_item_states.gif?alt=media)
