> For the complete documentation index, see [llms.txt](https://docs.bestway.com.ua/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bestway.com.ua/gem-rts-v1-ru/animacii/animirovanie-obekta-placement.md).

# Анимирование объекта placement

О том, как создавать анимации, которые меняют положение объекта (placement)

### Подготовка объекта к movement анимации:

1. Для movement анимаций placement необходимо прилинковать к кости basis.\
   Если placement будет прилинкован к body, то не сможет давать полноценное движение вперёд, а только шевеление вокруг body
2. ЦЕНТР объекта определяется по вертикальной проекции позиции кости placement.
3. Направление ВПЕРЕД определяется по вертикальной проекции оси X кости placement.

{% hint style="info" %}
Крайне желательно, чтобы данные полученные из placement совпадали с реальными.
{% endhint %}

{% hint style="info" %}
В игре положение объекта можно посмотреть через консольную команду showAxes 1.
{% endhint %}

{% hint style="info" %}
Отображение костей можно включить командой v\_showbonesnames "placement" "basis" "foresight"
{% endhint %}

{% hint style="info" %}
Отображение выключается по консольной команде "showbonesnames 0" Отображение направления осей в кости включается по нажатию "Alt+S" или по консольной команде "v\_showbones 1"
{% endhint %}

### Правило №1 (для анимаций, которые меняют положение объекта)

В НУЛЕВОМ кадре анимации ориентация и позиция placement должны ТОЧНО совпадать с basis в ВЕРТИКАЛЬНОЙ ПРОЕКЦИИ. В ПЕРВОМ кадре анимации ориентацию и позицию placement нужно установить на нужное для анимации место. Например, совместить его с body. В противном случае:

* анимация будет в нулевом кадре перекидывать объект в другое место
* нельзя будет вызывать анимации циклически, т.к. объект начнёт дрейфовать по карте

В описании анимации нужно прописать блок {movement}, например:

```
{binary "rlook_gun" {movement}}
```

### Правило №2 (для анимаций, у которых placement в первом кадре был уже смещён)

Для того, чтобы не было разрывов, в описании анимации нужно прописать блок {pinback N}, например:

* {pinback 1} ; работает по placement
* {pinback 2} ; работает по body
* {pinback} ; тоже, что и {pinback 1}

### Правило №3 (для цепочек анимаций, в которых есть анимации и с movement и c pinback)

Для анимаций кидания гранаты из-за угла и других, где есть похожая цепочка анимаций

1. "исходная точка"
2. rlook\_item (movement, вперед)
3. "точка бросания"
4. rlook\_throw\_begin (pinback, вперед)
5. rlook\_throw\_end (pinback, вперед)
6. "точка бросания"
7. rlook\_item (movement, назад)
8. "исходная точка"

Для того, чтобы "исходная точка" после цепочки анимаций не изменялась нужно:

* совместить положение кости body в первом кадре "rlook\_throw\_begin" и последнем кадре "rlook\_throw\_end"
* в описании анимаций "rlook\_throw\_begin" и "rlook\_throw\_end" использовать ключевое слово {pinback 2}
