---
description: Руководство по созданию кнопок с функционалом некоторых команд
---

# Создание кастомных кнопок

Основная команда для создания кнопок [/components](../commands/admins)

## Аргументы команды [/components buttons add](../commands/admins):

|              Аргумент              |                          Описание                          | Обязательный |
| :--------------------------------: | :--------------------------------------------------------: | :----------: |
| ссылка-на-сообщение / message\_url |  Ссылка на сообщение, для которого будет добавлена кнопка  |      Да      |
|            стиль / style           |  <p>Стиль кнопки:<br>Ссылка(Link) - кнопка ссылка<br></p>  |      Да      |
|      id-или-ссылка / id-or-url     | ID кнопки или сссылка на ресурс (Если стиль - Ссылка(Link) |      Да      |
|            строка / row            |       Строка компонента, куда будет добавлена кнопка       |      Да      |
|          колонка / column          |       Колонка компонента, куда будет добавлена кнопка      |      Да      |
|          название / label          |                       Название кнопки                      |      Нет     |
|           эмодзи / emoji           |                        Эмодзи кнопки                       |      Нет     |
|        выключена / disabled        |                  Будет ли выключена кнопка                 |      Нет     |

{% hint style="danger" %}
Аргументы "название" или "эмодзи" обязательны к заполнению
{% endhint %}

## Аргументы команды [/components buttons remove](../commands/admins):

|              Аргумент              |                       Описание                      | Обязательный |
| :--------------------------------: | :-------------------------------------------------: | :----------: |
| ссылка-на-сообщение / message\_url | Ссылка на сообщение, в котором будет удалена кнопка |      Да      |
|            строка / row            |     Строка компонента, где будет удалена кнопка     |      Да      |
|          колонка / column          |     Колонка компонента, где будет удалена кнопка    |      Да      |

## Доступные команды для кнопок: <a href="#available-buttons" id="available-buttons"></a>

{% tabs %}
{% tab title="Получить подарок" %}
ID: cmd{get-gift}gift{giftId}

Аргументы:

| Название |  Описание  | Обязательный |
| :------: | :--------: | :----------: |
|   gift   | ID подарка |      Да      |

[Руководство по созданию подарков](gifts)
{% endtab %}

{% tab title="Купить" %}
ID: cmd{buy}item{itemId}amount{10}price\_type{currency}price{10} prms-off dscnt-off limits-off

Аргументы:

|   Название  |                        Описание                        | Обязательный |
| :---------: | :----------------------------------------------------: | :----------: |
|     item    |                       ID предмета                      |      Да      |
|    amount   |                 Количество для покупки                 |      Нет     |
| price\_type | <p>Цена: ID предмета;<br>currency - валюта сервера</p> |      Нет     |
|    price    |                    Цена: количество                    |      Нет     |
|   prms-off  |    Отключает права на покупку, если таковые имеются    |      Нет     |
|  dscnt-off  |       Отключает скидку в зависимости от репутации      |      Нет     |
|  limits-off |               Отключает лимиты на покупку              |      Нет     |
|  ignr-shop  |   Игнорирует наличие и количество предмета в магазине  |      Нет     |

[Руководство по созданию предметов](items)
{% endtab %}

{% tab title="Продать" %}
ID: cmd{sell}item{itemId}amount{10}

Аргументы:

| Название |        Описание        | Обязательный |
| :------: | :--------------------: | :----------: |
|   item   |       ID предмета      |      Да      |
|  amount  | Количество для продажи |      Нет     |

[Руководство по созданию предметов](items)
{% endtab %}

{% tab title="Взять квест" %}
ID: cmd{quest-give-to-user}quest{questId}

Аргументы:

| Название |                                                                                            Описание                                                                                           | Обязательный |
| :------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------: |
|   quest  | <p>Возможные значения:<br>1. ID квеста<br>2. active - получить все активные квесты<br>3. daily - получить случайный ежедневный квест<br>4. weekly - получить случайный еженедельный квест</p> |      Да      |

[Руководство по созданию квестов](quests)
{% endtab %}

{% tab title="Квест: получить награду" %}
ID: cmd{getQuestReward}quest{questId}

Аргументы:

| Название |  Описание | Обязательный |
| :------: | :-------: | :----------: |
|   quest  | ID квеста |      Нет     |

При отсутствии аргумента **quest**, пользователь получит награды со всех квестов.

[Руководство по созданию квестов](quests)
{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Отменить квест" %}
ID: cmd{quest-take-from-user}quest{questId}

Аргументы:

| Название |  Описание | Обязательный |
| :------: | :-------: | :----------: |
|   quest  | ID квеста |      Да      |

[Руководство по созданию квестов](quests)
{% endtab %}

{% tab title="Выдать предмет" %}
ID: cmd{give-item}item{itemId}amount{10}

Аргументы:

| Название |                                                      Описание                                                      | Обязательный |
| :------: | :----------------------------------------------------------------------------------------------------------------: | :----------: |
|   item   |                                                     ID предмета                                                    |      Да      |
|  amount  |                                               Количество для продажи                                               |      Нет     |
|    usr   | Пользователь для которого будет выдан предмет, если отсутствует - будет выдано пользователю использовавшему кнопку |      Нет     |

[Руководство по созданию предметов](items)
{% endtab %}

{% tab title="Забрать предмет" %}
ID: cmd{take-item}item{itemId}amount{10}

Аргументы:

| Название |                                                      Описание                                                     | Обязательный |
| :------: | :---------------------------------------------------------------------------------------------------------------: | :----------: |
|   item   |                                                    ID предмета                                                    |      Да      |
|  amount  |                                               Количество для продажи                                              |      Нет     |
|    usr   | Пользователь у которого будет убран предмет, если отсутствует - будет убран у пользователя использовавшего кнопку |      Нет     |

[Руководство по созданию предметов](items)
{% endtab %}

{% tab title="Команды бота" %}
ID: cmd{help}commands eph reply

Аргументы:

| Название |                            Описание                           | Обязательный |
| :------: | :-----------------------------------------------------------: | :----------: |
|    eph   |  Если есть, то сообщение будет видно только нажавшему кнопку  |      Нет     |
|   reply  | Если есть, то сообщение  будет отправлено ответным сообщением |      Нет     |
{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Профиль" %}
ID: cmd{profile} eph reply

Аргументы:

| Название |                                                  Описание                                                 | Обязательный |
| :------: | :-------------------------------------------------------------------------------------------------------: | :----------: |
|    eph   |                        Если есть, то сообщение будет видно только нажавшему кнопку                        |      Нет     |
|   reply  |                       Если есть, то сообщение  будет отправлено ответным сообщением                       |      Нет     |
|    usr   |       ID пользователя, который сможет использовать кнопку, если отсутствует - использовать могут все      |      Нет     |
|    mbr   | ID пользователя, чей профиль будет выводится, если отсутствует - выводится профиль использовавшего кнопку |      Нет     |
{% endtab %}

{% tab title="Инвентарь" %}
ID: cmd{inventory} eph reply

Аргументы:

<table><thead><tr><th width="216" align="center">Название</th><th width="299.66666666666663" align="center">Описание</th><th align="center">Обязательный</th></tr></thead><tbody><tr><td align="center">eph</td><td align="center">Если есть, то сообщение будет видно только нажавшему кнопку</td><td align="center">Нет</td></tr><tr><td align="center">reply</td><td align="center">Если есть, то сообщение  будет отправлено ответным сообщением</td><td align="center">Нет</td></tr><tr><td align="center">usr</td><td align="center">ID пользователя, который сможет использовать кнопку, если отсутствует - использовать могут все</td><td align="center">Нет</td></tr><tr><td align="center">mbr</td><td align="center">ID пользователя, чей инвентарь будет выводится, если отсутствует - выводится инвентарь использовавшего кнопку</td><td align="center">Нет</td></tr></tbody></table>
{% endtab %}

{% tab title="Достижения" %}
ID: cmd{achievements} eph reply

Аргументы:

| Название |                                                        Описание                                                       | Обязательный |
| :------: | :-------------------------------------------------------------------------------------------------------------------: | :----------: |
|    eph   |                              Если есть, то сообщение будет видно только нажавшему кнопку                              |      Нет     |
|   reply  |                             Если есть, то сообщение  будет отправлено ответным сообщением                             |      Нет     |
|    usr   |             ID пользователя, который сможет использовать кнопку, если отсутствует - использовать могут все            |      Нет     |
|    mbr   | ID пользователя, чьи достижения будет показываться, если отсутствует - показываются достижения использовавшего кнопку |      Нет     |
{% endtab %}

{% tab title="Ранг" %}
ID: cmd{rank} eph reply

Аргументы:

| Название |                                                      Описание                                                     | Обязательный |
| :------: | :---------------------------------------------------------------------------------------------------------------: | :----------: |
|    eph   |                            Если есть, то сообщение будет видно только нажавшему кнопку                            |      Нет     |
|   reply  |                           Если есть, то сообщение  будет отправлено ответным сообщением                           |      Нет     |
|    mbr   | ID пользователя, чья карточка будет показываться, если отсутствует - показывается карточка использовавшего кнопку |      Нет     |
{% endtab %}

{% tab title="Ранг-установить" %}
ID: cmd{rank-set} eph reply

Аргументы:

| Название |                            Описание                           | Обязательный |
| :------: | :-----------------------------------------------------------: | :----------: |
|    eph   |  Если есть, то сообщение будет видно только нажавшему кнопку  |      Нет     |
|   reply  | Если есть, то сообщение  будет отправлено ответным сообщением |      Нет     |
{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Сказать" %}
ID: cmd{say}channelId{ID}messageId{ID}permission{ID} eph reply

Аргументы:

|  Название  |                            Описание                           | Обязательный |
| :--------: | :-----------------------------------------------------------: | :----------: |
|     eph    |  Если есть, то сообщение будет видно только нажавшему кнопку  |      Нет     |
|    reply   | Если есть, то сообщение  будет отправлено ответным сообщением |      Нет     |
|   update   |         Если есть, то сообщение будет отредактировано         |      Нет     |
|  channelId |                 ID канала для поиска сообщения                |      Нет     |
|  messageId |                          ID сообщения                         |      Нет     |
| permission |                            ID права                           |      Нет     |

{% hint style="info" %}
Аргументы channelId и messageId используются вместе, нельзя использовать что-то одно
{% endhint %}

{% hint style="info" %}
Аргументы channelId и messageId используются для вывода сообщения из определенного канала. Таким образом можно создать кнопку, которое будет выводить любое сообщение из любого канала.
{% endhint %}

{% file src="https://3114912554-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdvKp81oyEJS2euoIe7rF%2Fuploads%2FRX7sina34uPNf0uyp6R5%2F%D0%92%D0%B8%D0%B4%D0%B5%D0%BE%2017-06-2023%2011_26_02.mp4?alt=media&token=18715acd-a8d4-40c2-ac75-8e140d7d6613" %}

{% hint style="info" %}
Вывод сообщения через аргументы channelId и messageId производится вместе с кнопками и файлами прикрепленными к данному сообщению.
{% endhint %}

{% hint style="info" %}
Если в форму команды say вставить ссылку на сообщение, то бот выведет полностью скопированное сообщение.
{% endhint %}

{% file src="https://3114912554-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdvKp81oyEJS2euoIe7rF%2Fuploads%2FnXMKXj2bflPoHKZvnCBJ%2F%D0%92%D0%B8%D0%B4%D0%B5%D0%BE%2017-06-2023%2011_36_45.mp4?alt=media&token=613752f6-8db0-453b-87b4-0f994c7fb348" %}
{% endtab %}

{% tab title="Статистика" %}
ID: cmd{stats} eph reply

Аргументы:

| Название |                                                     Описание                                                    | Обязательный |
| :------: | :-------------------------------------------------------------------------------------------------------------: | :----------: |
|    eph   |                           Если есть, то сообщение будет видно только нажавшему кнопку                           |      Нет     |
|   reply  |                          Если есть, то сообщение  будет отправлено ответным сообщением                          |      Нет     |
|    usr   |          ID пользователя, который сможет использовать кнопку, если отсутствует - использовать могут все         |      Нет     |
|    mbr   | ID пользователя, чья статистика будет выводится, если отсутствует - выводится статистика использовавшего кнопку |      Нет     |
{% endtab %}

{% tab title="Инвентарь ролей" %}
ID: cmd{inventory-roles} eph reply

Аргументы:

<table><thead><tr><th width="216" align="center">Название</th><th width="299.66666666666663" align="center">Описание</th><th align="center">Обязательный</th></tr></thead><tbody><tr><td align="center">eph</td><td align="center">Если есть, то сообщение будет видно только нажавшему кнопку</td><td align="center">Нет</td></tr><tr><td align="center">reply</td><td align="center">Если есть, то сообщение  будет отправлено ответным сообщением</td><td align="center">Нет</td></tr><tr><td align="center">usr</td><td align="center">ID пользователя, который сможет использовать кнопку, если отсутствует - использовать могут все</td><td align="center">Нет</td></tr><tr><td align="center">mbr</td><td align="center">ID пользователя, чей инвентарь ролей будет выводится, если отсутствует - выводится инвентарь ролей использовавшего кнопку</td><td align="center">Нет</td></tr></tbody></table>
{% endtab %}

{% tab title="Создание кастомной роли" %}
ID: cmd{custom-role}
{% endtab %}
{% endtabs %}
